From 9b268dd60ddbda72944b0eb96613478ff4930220 Mon Sep 17 00:00:00 2001 From: Alethea Toh Date: Tue, 27 Feb 2018 16:18:38 +0800 Subject: [PATCH 1/3] latest changes --- js/exercises.js | 25 +++++++++++++++++++++++++ js/findLongestWord.js | 13 +++++++++++++ js/isCharacterAVowel.js | 7 +++++++ js/isPrime.js | 11 +++++++++++ js/letterCount.js | 18 ++++++++++++++++++ js/maxOfThree.js | 12 ++++++++++++ js/merge.js | 6 ++++++ js/primes.js | 17 +++++++++++++++++ js/sillySum.js | 7 +++++++ js/sumArray.js | 8 ++++++++ 10 files changed, 124 insertions(+) create mode 100644 js/exercises.js create mode 100644 js/findLongestWord.js create mode 100644 js/isCharacterAVowel.js create mode 100644 js/maxOfThree.js create mode 100644 js/sumArray.js diff --git a/js/exercises.js b/js/exercises.js new file mode 100644 index 0000000..783d169 --- /dev/null +++ b/js/exercises.js @@ -0,0 +1,25 @@ + +function reverseString(arr) { + // var res = ""; + // for (var i=str.length-1;i>=0;i--) { + // res += str[i]; + // } + + var ptr1 = 0; + var ptr2 = arr.length-1; + + while (ptr1 < ptr2) { + var temp = arr[ptr1]; + arr[ptr1] = arr[ptr2]; + arr[ptr2] = temp; + ptr1++; + ptr2--; + } + + return arr; + +} + +var str = "pneumonoultramicroscopicsilicovolcanoconiosis"; +var arr = Array.from({length: 10000}, () => Math.floor(Math.random() * 10000)); +// console.log(reverseString(arr)); diff --git a/js/findLongestWord.js b/js/findLongestWord.js new file mode 100644 index 0000000..1437d02 --- /dev/null +++ b/js/findLongestWord.js @@ -0,0 +1,13 @@ +function findLongestWord(array) { + var maxLength = 0; + var maxWord; + for (var i=0; i maxLength) { + maxLength = array[i].length; + console.log(array[i]); + } + } + return maxLength; +} + +console.log(findLongestWord(["icroscopicsilicovolcanoconiosis","hello","again"])); diff --git a/js/isCharacterAVowel.js b/js/isCharacterAVowel.js new file mode 100644 index 0000000..2c97365 --- /dev/null +++ b/js/isCharacterAVowel.js @@ -0,0 +1,7 @@ +function isCharacterAVowel(char) { + var vowels = "aeiouAEIOU"; + if (vowels.includes(char)) return true; + return false; +} + +console.log(isCharacterAVowel('z')); diff --git a/js/isPrime.js b/js/isPrime.js index e69de29..d940d69 100644 --- a/js/isPrime.js +++ b/js/isPrime.js @@ -0,0 +1,11 @@ +function isPrime(num) { + if (num <= 1) return false; + if (num == 2) return true; + if (num%2 == 0) return false; + for (var i=3; i*i < num; i+= 2) { + if (num%i == 0) return false; + } + return true; +} + +console.log(isPrime(6)); diff --git a/js/letterCount.js b/js/letterCount.js index e69de29..28bbf8c 100644 --- a/js/letterCount.js +++ b/js/letterCount.js @@ -0,0 +1,18 @@ +function letterCount(str) { + var dict = {}; + var re = /^[a-zA-Z_0-9]$/; // ignore spaces and punctuation + for (var i=0;i num2) max = num1; + else max = num2; + + if (max > num3) return max; + else return num3; + + // return Math.max(num1,num2,num3); +} + +console.log(maxOfThree(1,2,3)); diff --git a/js/merge.js b/js/merge.js index e69de29..ea25822 100644 --- a/js/merge.js +++ b/js/merge.js @@ -0,0 +1,6 @@ +function merge(array1, array2) { + var merged = array1.concat(array2); + return merged.sort(function(a,b){return a-b;}); +} + +console.log(merge([2,3,4,10],[6,9,100])) diff --git a/js/primes.js b/js/primes.js index e69de29..978ec4f 100644 --- a/js/primes.js +++ b/js/primes.js @@ -0,0 +1,17 @@ +function primes(max) { + if (max == 0) return []; + var res = [2]; + if (max == 1) return res; + var num = 3; + while (max > 1) { + if (isPrime(num)) { + res.push(num); + max--; + } + num += 2; + } + + return res; +} + +console.log(primes(15)); diff --git a/js/sillySum.js b/js/sillySum.js index e69de29..ee06845 100644 --- a/js/sillySum.js +++ b/js/sillySum.js @@ -0,0 +1,7 @@ +function sillySum(arr) { + var sum = 0; + for (var i=0;i Date: Tue, 27 Feb 2018 16:21:18 +0800 Subject: [PATCH 2/3] latest changes --- js/exercises.js | 25 ------------------------- 1 file changed, 25 deletions(-) delete mode 100644 js/exercises.js diff --git a/js/exercises.js b/js/exercises.js deleted file mode 100644 index 783d169..0000000 --- a/js/exercises.js +++ /dev/null @@ -1,25 +0,0 @@ - -function reverseString(arr) { - // var res = ""; - // for (var i=str.length-1;i>=0;i--) { - // res += str[i]; - // } - - var ptr1 = 0; - var ptr2 = arr.length-1; - - while (ptr1 < ptr2) { - var temp = arr[ptr1]; - arr[ptr1] = arr[ptr2]; - arr[ptr2] = temp; - ptr1++; - ptr2--; - } - - return arr; - -} - -var str = "pneumonoultramicroscopicsilicovolcanoconiosis"; -var arr = Array.from({length: 10000}, () => Math.floor(Math.random() * 10000)); -// console.log(reverseString(arr)); From 12be1f0697eb1b732363ac8b647d9636ba6d936a Mon Sep 17 00:00:00 2001 From: Alethea Toh Date: Tue, 27 Feb 2018 16:33:39 +0800 Subject: [PATCH 3/3] latest changes --- js/findLongestWord.js | 2 +- js/primes.js | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/js/findLongestWord.js b/js/findLongestWord.js index 1437d02..d7c35c7 100644 --- a/js/findLongestWord.js +++ b/js/findLongestWord.js @@ -4,7 +4,7 @@ function findLongestWord(array) { for (var i=0; i maxLength) { maxLength = array[i].length; - console.log(array[i]); + // console.log(array[i]); } } return maxLength; diff --git a/js/primes.js b/js/primes.js index 978ec4f..acaa874 100644 --- a/js/primes.js +++ b/js/primes.js @@ -1,3 +1,13 @@ +function isPrime(num) { + if (num <= 1) return false; + if (num == 2) return true; + if (num%2 == 0) return false; + for (var i=3; i*i < num; i+= 2) { + if (num%i == 0) return false; + } + return true; +}; + function primes(max) { if (max == 0) return []; var res = [2];