Top 10 Javascript Algorithms to Prepare for Coding Interviews

Build a solid foundation and prepare you for Leetcode-style coding challenges. Learn the top 10 must-know Javascript algorithms interview questions to help you ace your coding interviews. This course will help you build a strong foundation in Javascript algorithms and tackle Leetcode problems with confidence.
💻 Code: github.com/codingmoney/javasc...
✏️ Course developed by @CodingMoney
⌨️ (0:00:00) Introduction
⌨️ (0:01:00) Reverse String & Integers
⌨️ (0:11:29) Palindrome
⌨️ (0:15:58) Max Char
⌨️ (0:33:43) Array Chunking
⌨️ (0:41:56) Title Case
⌨️ (0:49:31) Anagrams
⌨️ (1:07:54) Count Vowels
⌨️ (1:15:21) Fizz Buzz
⌨️ (1:20:02) Steps String Pattern
⌨️ (1:30:52) Pyramid String Pattern
⌨️ (1:39:24) Bonus - Spiral Matrix
🎉 Thanks to our Champion and Sponsor supporters:
👾 davthecoder
👾 jedi-or-sith
👾 南宮千影
👾 Agustín Kussrow
👾 Nattira Maneerat
👾 Heather Wcislo
👾 Serhiy Kalinets
👾 Justin Hual
👾 Otis Morgan
👾 Oscar Rahnama
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news

Пікірлер: 54

  • @CodingMoney
    @CodingMoneyАй бұрын

    1:00 Reverse String & Integers 11:29 Palindrome 15:58 Max Char 33:43 Array Chunking 41:56 Title Case 49:31 Anagrams 1:07:54 Count Vowels 1:15:21 Fizz Buzz 1:20:02 Steps String Pattern 1:30:52 Pyramid String Pattern 1:39:24 Bonus - Spiral Matrix

  • @sayedrezaomid1305
    @sayedrezaomid1305Ай бұрын

    I am very happy that i saw my Afghan and ex colleaque trainings at this channel.

  • @augustoeduardo209
    @augustoeduardo209Ай бұрын

    Beatiful countryside landscape.

  • @daisy_haniii
    @daisy_haniiiАй бұрын

    Palindrome using two pointers technique: function isPalindrome(str) { let min = 0 let max = str.length - 1 do { if(str[min] == str[max]) { min++ max-- } else { return false } }while(min return true }

  • @MyCodingDiarie
    @MyCodingDiarieАй бұрын

    You're changing lives with your content. Keep inspiring!

  • @orangeprogrammer
    @orangeprogrammerАй бұрын

    Awesome video! Thank you for making it 😀

  • @WhitneyChakara
    @WhitneyChakaraАй бұрын

    This is excellent and able to be completed as it's short and straight to the point.

  • @marioerichsen1977
    @marioerichsen1977Ай бұрын

    function palindrome(str) { //with two pointer technique var stringArr = str.split('') const reverseArray = (arr) => { let i = 0; let j = arr.length-1; while (i let tmp = arr[i]; arr[i++] = arr[j]; arr[j--] = tmp; }; return arr }; const reversed = reverseArray(stringArr) return str === stringArr.join('') }

  • @khanhphamthanh5012
    @khanhphamthanh5012Ай бұрын

    amazing spiral Matrix. It really so hard for me to find out the way. Thank you for your code

  • @arzoohashimi519
    @arzoohashimi519Ай бұрын

    Very informative and helpful.

  • @user-dy8si5bf8t
    @user-dy8si5bf8tАй бұрын

    So engaging and interesting thank you sir for this lecture ❤

  • @atultrp1
    @atultrp1Ай бұрын

    // every method function palindrome(str) { return str.split('').every((ele, i) => { return ele == str[str.length - i - 1] }) } // two pointer technique function palindrome2(str) { let start = 0 let last = str.length - 1 while (start if (str[start] != str[last]) { return false } else { start++ last-- } } return true }

  • @sergeynazarov2473
    @sergeynazarov2473Ай бұрын

    Perfect, trainees will be ready!

  • @shulamohammad2275
    @shulamohammad2275Ай бұрын

    loved the tutorial by Mukhtar!

  • @murshidalam1982
    @murshidalam1982Ай бұрын

    Very helpful.

  • @LokeshKumar-tk7ri
    @LokeshKumar-tk7riАй бұрын

    Thank you Free code Camp for providing DSA in Javascript and also need more content on JS DSA

  • @lazarokabira2945
    @lazarokabira2945Ай бұрын

    Love this

  • @Adolfofilipe7369
    @Adolfofilipe7369Ай бұрын

    Thanks for your help 🎉🎉🎉🎉🎉🎉

  • @user-lp1jw1fq7d
    @user-lp1jw1fq7dАй бұрын

    Love this video ❤

  • @user-cu7tw3vb2k
    @user-cu7tw3vb2kАй бұрын

    Q1: function reverseIt(str){ let newArr = ''; for(let i = 0; i { newArr += str[str.length -i-1]; } return newArr; } console.log(reverseIt('hello'))

  • @edwarddk9007
    @edwarddk90075 күн бұрын

    my solution for the Pyramid String Pattern exercise: function pyramid(n, level, body, space) { if(level

  • @DavidMorenoH
    @DavidMorenoHАй бұрын

    OMG please do this but with Java or Python

  • @adlen01

    @adlen01

    Ай бұрын

    Ther is ful apk in webstores

  • @MS-gi3hc
    @MS-gi3hcАй бұрын

    Thank you

  • @savchenkoilliya9131
    @savchenkoilliya9131Ай бұрын

    In my opinion I can give better and more javascript-style solutions for at least couple tasks. Maybe it's a little bit harder to read, but it works better when we are talking about js: var chunk = (array, size) => (array.length (str.split(" ") .map((word)=> (word.charAt(0).toUpperCase() + word.slice(1)).join(" "))) P.S. Good practice show O(n) complexity for each solution, because it's a think that can be asked on any interview.

  • @deha9210

    @deha9210

    Ай бұрын

    var 🤢

  • @narekmeliksetyan9262
    @narekmeliksetyan9262Ай бұрын

    it was very useful. but I will suggest the following solution for problem 9. function foo(n){ for(i=1;i

  • @vnm_8945

    @vnm_8945

    29 күн бұрын

    You could just use Array(i) instead of Array.from({length:i}), nice solution!

  • @dudekool12
    @dudekool12Ай бұрын

    Need this in Python!

  • @user-ko6zp7rt6b
    @user-ko6zp7rt6b29 күн бұрын

    function isPolindrom(str) { let check = str.split('').reverse().join(''); return str === check ? true : false }

  • @salaminipples965
    @salaminipples965Ай бұрын

    These are way easier than "easy" leetcode problems.

  • @mr_aha4713
    @mr_aha4713Ай бұрын

    12:23 function pal(str){ console.log(str) if (str === str.split('').reverse().join('')){ return true }else { return false } } console.log(pal(""))

  • @alikh5601
    @alikh5601Ай бұрын

    Saved

  • @ITRebels
    @ITRebels23 күн бұрын

    awesome

  • @m0slah
    @m0slahАй бұрын

  • @-.nisa.-
    @-.nisa.-Ай бұрын

    1:39:20 This is such an overcomplication... One 'for' loop is more than enough here: for (let i = 1; i

  • @arzoohashimi519

    @arzoohashimi519

    Ай бұрын

    Big o notation for repeat function is o(n) which is similar to a for loop. So ur solution is also the same.

  • @ajmalshahanpm938
    @ajmalshahanpm938Ай бұрын

    function count(str){ let counter=0; // for(let i=0;ifi===str[i])) { // counter++; // } // } for(single of str){ if (['a','i','o','e','u'].some((fi)=>fi===single)) { counter++; } } return counter; } console.log(count("aj code"));

  • @SaeedITSpot
    @SaeedITSpotАй бұрын

    🎉🎉🎉

  • @rishiraj2548
    @rishiraj2548Ай бұрын

    👍🙂👍

  • @user-ko6zp7rt6b
    @user-ko6zp7rt6b18 күн бұрын

    function checkVowels(str) { let arr = [] const vowelsArray = ['a', 'e', 'i', 'o', 'u'] let arrFrStr = str.toLowerCase().split('') for (let i of vowelsArray) { for (let y of arrFrStr) { if (i === y) { arr.push(i) } } } return arr.length }

  • @vijayakabajo
    @vijayakabajoАй бұрын

    0:22 He owns a farm

  • @g0nt411
    @g0nt411Ай бұрын

    Honestly, any companies could ask questions like these?

  • @subashstino899
    @subashstino899Ай бұрын

    Is this MERN Stack developer needs to Study DSA ???… And I want to know Any best book for DSA( Data structure and algorithms )……????

  • @feerfeja

    @feerfeja

    Ай бұрын

    this video course is the best for learning algorithms in Javascript :p

  • @phyapanchakpram
    @phyapanchakpram19 күн бұрын

    //alternate newbie solution function capitilizeFirstLetter(str) { let arr = str.split(' '); let result = []; for(let s of arr) { result.push(s.charAt(0).toUpperCase() + s.substr(1)) } return result.toString().replace(/,/g,' '); }

  • @phyapanchakpram
    @phyapanchakpram19 күн бұрын

    //To return all char if max occurence has more than one time function maxOccurence(str) { let charMap = {}; for(let char of str) { charMap[char] = (charMap[char] || 0) + 1; } let max = 0; let maxChar = []; for(let key in charMap) { if(charMap[key] > max){ max = charMap[key]; } } for(let char in charMap) { if(charMap[char] === max) { maxChar.push(char); } } return maxChar; }

  • @HazimTulumovic
    @HazimTulumovic2 күн бұрын

    Max chars : function maxChar(str) { const usedChars = {}; for (const char of str) { usedChars[char] = usedChars[char] ? usedChars[char] + 1 : 1; } return Object.keys(usedChars).sort((a, b) => usedChars[b] - usedChars[a])[0]; }

  • @dogukankarabeyin3059
    @dogukankarabeyin3059Ай бұрын

    Guys these questions and answers are identical to Stephen Grider's Coding Interview Bootcamp udemy course. I get these are common questions but it just seemed too similar.

  • @OthmaneAHMARLAHYA
    @OthmaneAHMARLAHYAАй бұрын

    i'm sure no one understand this

  • @nicolasmanns7249
    @nicolasmanns72496 күн бұрын

    Palindrome with some kind of two pointers made with a for loop (also removes caps and spaces) function palindrome(str) { strToTest = str.toLowerCase().split(" ").join(""); let isPalindrome = true; for (let i = 0; i

  • @DavidDroddy
    @DavidDroddy28 күн бұрын

    For String and Int reversal and Palindrome -- .every and two pointer techniques: // STRING.SPLIT INTO ARRAY //const reverseString = (theString) => theString.split('').reverse().join(''); // SPREAD STRING(ARRAY-OF-CHARACTERS) INTO ARRAY // const reverseString = (theString) => [...theString].reverse().join(''); // ARRAY.EVERY(element, index, array) const reverseString = (theString) => { let reversedString = ''; const reversiosa = (character, i, charArray) => { // using index and array (all tests pass) // let lastElement = charArray[charArray.length - ++i]; // return reversedString += lastElement; const j = charArray.length - (++i) return reversedString += charArray[j]; // using element (all tests pass) // return reversedString = character + reversedString; }; [...theString].every(reversiosa) return reversedString; } // "TWO POINTER" SOLUTION // const reverseString = (theString) => { // let i = 0; // let j = theString.length-1; // let stringArray = [...theString]; // while(i parseInt(reverseString(theNumber.toString())) * Math.sign(theNumber); const isPalindrome = (theString) => reverseString(theString) === theString; // TESTS const stringToReverse = 'jar'; const expectedReversedString = 'raj'; const reversedString = reverseString(stringToReverse); let expectedAndReceived = `expected: ${expectedReversedString}; received: ${reversedString}`; if(reversedString === expectedReversedString) { console.log(`pass - reverseString('${stringToReverse}') ${expectedAndReceived}`); } else { console.error(`FAIL - reverseString('${stringToReverse}') ${expectedAndReceived}`); } let intToReverse = 53; let expectedReversedInt = 35; let reversedInt = reverseInt(intToReverse); expectedAndReceived = `expected: ${expectedReversedInt}; received: ${reversedInt};`; if(reversedInt === expectedReversedInt){ console.log(`pass - reverse a POSITIVE integer reverseInt(${intToReverse}) ${expectedAndReceived}`); } else { console.error(`FAIL - reverse a POSITIVE integer reverseInt(${intToReverse}) ${expectedAndReceived}`); } intToReverse = -54; expectedReversedInt = -45; reversedInt = reverseInt(intToReverse); expectedAndReceived = `expected: ${expectedReversedInt}; received: ${reversedInt};`; if(reversedInt === expectedReversedInt){ console.log(`pass - reverse a NEGATIVE integer reverseInt(${intToReverse}) ${expectedAndReceived}`); } else { console.error(`FAIL - reverse a NEGATIVE integer reverseInt(${intToReverse}) ${expectedAndReceived}`); }

  • @petehotchkiss4830
    @petehotchkiss4830Ай бұрын

    Does the capitalise method need to split strings out? Would it not be more performant to use a RegEx for this? eg const capitalise = (str): string => str.replace(/\w\S*/g, (s) => `${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()}`);

  • @HazimTulumovic
    @HazimTulumovic2 күн бұрын

    Max chars: function maxChar(str) { const usedChars = {}; for (const char of str) { usedChars[char] = usedChars[char] ? usedChars[char] + 1 : 1; } return Object.keys(usedChars).sort((a, b) => usedChars[b] - usedChars[a])[0]; }

Келесі