diff --git a/isNumberPalindrome.js b/isNumberPalindrome.js index 699a785..460bd67 100644 --- a/isNumberPalindrome.js +++ b/isNumberPalindrome.js @@ -32,3 +32,18 @@ const isNumberPalindrome = (number) => { return reversed === number; } */ + +const isNumberPalindrome = (number) => { + let reversed = ''; + let digit; + + let copyOfNum = number; + while(copyOfNum > 0) { + digit = (copyOfNum % 10); + // reversed += (reversed * 10) + digit; + reversed += digit; + copyOfNum = Math.floor(copyOfNum / 10); + } + + return Number(reversed) === number; +}; diff --git a/longestCommonPrefix.js b/longestCommonPrefix.js index 99bd9f6..621a510 100644 --- a/longestCommonPrefix.js +++ b/longestCommonPrefix.js @@ -39,3 +39,30 @@ const longestCommonPrefix = arrayOfStrings => { is empty) }; */ + +const getPrefixFromWord = (arrWord, word) => { + for (let i = arrWord.length - 1; i !== -1; i--) { + let prefix = arrWord.slice(0, i + 1); + + if (word.indexOf(prefix) > -1) { + return prefix; + } + } + + return ''; +}; + +const longestCommonPrefix = (arrayOfStrings, word) => { + let longestPrefix = ''; + + for (let i = 0; i < arrayOfStrings.length; i++) { + let arrWord = arrayOfStrings[i]; + let prefix = getPrefixFromWord(arrWord, word); + + if (prefix.length > longestPrefix.length) { + longestPrefix = prefix; + } + } + + return longestPrefix; +}; \ No newline at end of file