Top 10 Javascript Algorithms to Prepare for Coding Interviews

  Рет қаралды 82,348

freeCodeCamp.org

freeCodeCamp.org

Күн бұрын

Пікірлер: 82
@CodingMoney
@CodingMoney 9 ай бұрын
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
@euroclydon7883
@euroclydon7883 5 ай бұрын
const palindromeWithTwoPointers = (str: string) => { let left = 0; let right = str.length - 1; while (left < right) { if (str[left] !== str[right]) { return false; } left++; right--; } return true; };
@sayedrezaomid1305
@sayedrezaomid1305 9 ай бұрын
I am very happy that i saw my Afghan and ex colleaque trainings at this channel.
@augustoeduardo209
@augustoeduardo209 9 ай бұрын
Beatiful countryside landscape.
@MyCodingDiary
@MyCodingDiary 9 ай бұрын
You're changing lives with your content. Keep inspiring!
@WhitneyChakara
@WhitneyChakara 9 ай бұрын
This is excellent and able to be completed as it's short and straight to the point.
@lavendercode
@lavendercode 9 ай бұрын
Awesome video! Thank you for making it 😀
@atultrp1
@atultrp1 9 ай бұрын
// 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 < last) { if (str[start] != str[last]) { return false } else { start++ last-- } } return true }
@Emblazon
@Emblazon 4 ай бұрын
yea, using two pointers is faster
@Website_TV_1
@Website_TV_1 2 ай бұрын
Awesome breakdown of key algorithms! 🎉 Definitely a must-watch for anyone preparing for coding interviews. Loved how clearly each algorithm was explained, especially the time complexities and practical examples. 💻 Thanks for making these tough concepts easier to grasp! 🙌
@daisy_haniii
@daisy_haniii 8 ай бұрын
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 < max) return true }
@mahmoudzakria6946
@mahmoudzakria6946 5 ай бұрын
function palindrome(str){ return str === [...str].reverse().join("") }
@khanhphamthanh5012
@khanhphamthanh5012 9 ай бұрын
amazing spiral Matrix. It really so hard for me to find out the way. Thank you for your code
@sergeynazarov2473
@sergeynazarov2473 9 ай бұрын
Perfect, trainees will be ready!
@MrMouniruss
@MrMouniruss 20 күн бұрын
Hi, For the MaxChar you can do this way : function maxChar(str){ let arr = str.split(""); let maxChar = ""; arr.forEach(element => { if(arr.filter(el => el === element).length > maxChar.length) { maxChar = element; } }); return maxChar; }
@narekmeliksetyan01
@narekmeliksetyan01 9 ай бұрын
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 8 ай бұрын
You could just use Array(i) instead of Array.from({length:i}), nice solution!
@andrewwall2730
@andrewwall2730 2 ай бұрын
Very informative. Thanks so much for sharing. Though there is a simpler solution for #9, steps: const steps = n => { for (let i = 1; i
@nazardzys7514
@nazardzys7514 7 ай бұрын
Hi, thanks for your video! On example 5 you can also use Array.splice() method. I believe, it looks more cleaner comparing to solution with Array.slice(). here's the whole solution: return str .split(" ") .map((item) => { const word = item.split(""); word.splice(0, 1, word[0].toUpperCase()); return word.join(""); }) .join(" "); }
@mr_aha4713
@mr_aha4713 9 ай бұрын
12:23 function pal(str){ console.log(str) if (str === str.split('').reverse().join('')){ return true }else { return false } } console.log(pal(""))
@Asifpatel-b8o
@Asifpatel-b8o 9 ай бұрын
So engaging and interesting thank you sir for this lecture ❤
@arzoohashimi519
@arzoohashimi519 9 ай бұрын
Very informative and helpful.
@edwarddk9007
@edwarddk9007 8 ай бұрын
my solution for the Pyramid String Pattern exercise: function pyramid(n, level, body, space) { if(level
@Mayur-w6v
@Mayur-w6v 9 ай бұрын
Q1: function reverseIt(str){ let newArr = ''; for(let i = 0; i< str.length ; i ++) { newArr += str[str.length -i-1]; } return newArr; } console.log(reverseIt('hello'))
@-.nisa.-
@-.nisa.- 9 ай бұрын
1:39:20 This is such an overcomplication... One 'for' loop is more than enough here: for (let i = 1; i
@arzoohashimi519
@arzoohashimi519 9 ай бұрын
Big o notation for repeat function is o(n) which is similar to a for loop. So ur solution is also the same.
@Website_TV_1
@Website_TV_1 3 ай бұрын
it was very useful, help me a lots for the interview
@savchenkoilliya9131
@savchenkoilliya9131 9 ай бұрын
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.
@nmephchik
@nmephchik 9 ай бұрын
var 🤢
@LokeshKumar-tk7ri
@LokeshKumar-tk7ri 9 ай бұрын
Thank you Free code Camp for providing DSA in Javascript and also need more content on JS DSA
@marioerichsen1977
@marioerichsen1977 9 ай бұрын
function palindrome(str) { //with two pointer technique var stringArr = str.split('') const reverseArray = (arr) => { let i = 0; let j = arr.length-1; while (i < j) { let tmp = arr[i]; arr[i++] = arr[j]; arr[j--] = tmp; }; return arr }; const reversed = reverseArray(stringArr) return str === stringArr.join('') }
@DavidMorenoH
@DavidMorenoH 9 ай бұрын
OMG please do this but with Java or Python
@abdo01386
@abdo01386 9 ай бұрын
Ther is ful apk in webstores
@MBXD001
@MBXD001 4 ай бұрын
so just with these, are we going to be able to complete the legacy js data structures algorithms certification on freecodecamp ?
@Aso-c6z
@Aso-c6z 9 ай бұрын
Love this video ❤
@lazarokabira2945
@lazarokabira2945 9 ай бұрын
Love this
@senthamarai_kannan.
@senthamarai_kannan. 6 ай бұрын
function steps(num){ for(let i= 0; i < num; i++){ let str = '' " for(let j=0; j
@ajiteshmishra0005
@ajiteshmishra0005 7 ай бұрын
We want more videos on these String and Array manipulation methods and programming questions
@Adolfofilipe7369
@Adolfofilipe7369 9 ай бұрын
Thanks for your help 🎉🎉🎉🎉🎉🎉
@shulamohammad2275
@shulamohammad2275 9 ай бұрын
loved the tutorial by Mukhtar!
@FULLUPE1
@FULLUPE1 5 ай бұрын
great and awesome thanks sir but with steps this is a little modification const (no if and else) steps=(n)=>{ for (let i=1; i
@МарияЕфимова-ч4б
@МарияЕфимова-ч4б 8 ай бұрын
function isPolindrom(str) { let check = str.split('').reverse().join(''); return str === check ? true : false }
@ManiSingh-gr7zi
@ManiSingh-gr7zi 7 ай бұрын
Excellent, thank you.
@murshidalam1982
@murshidalam1982 9 ай бұрын
Very helpful.
@kalechips965
@kalechips965 9 ай бұрын
These are way easier than "easy" leetcode problems.
@loaymohamed8134
@loaymohamed8134 4 ай бұрын
My solution for Spiral Matrix const spiral = (num) => { const matrix = Array.from({length: num}, ()=>Array(num).fill(0)) // n*n matrix filled with 0's let i=0, j=0; let count = 0; matrix[i][j]=++count; while(count
@Emblazon
@Emblazon 4 ай бұрын
idk if it is "cheating", but my solution for the steps makes use of recursion function steps(n, i = 0, s = "") { if (i > n) return; s = "#".repeat(i); console.log(s); steps(n, ++i, s); } steps(7);
@ajiteshmishra0005
@ajiteshmishra0005 7 ай бұрын
We are learning well from these type of Videos But please zoom in something more so that we can see the screen properly.
@gauthamchengappa1702
@gauthamchengappa1702 3 ай бұрын
Palidorme soluton - 2 pointer method function checkPalidrome2PointerMethod(str) { let left = 0; let right = str.length - 1; while (left < right) { if (str[left] !== str[right]) { return 'Not a palidrome' } left++; right--; } return 'It is a palidrome' }
@giftedfingers2580
@giftedfingers2580 7 ай бұрын
I'm having a hard time understanding what part of the reverse function is the actual part doing the reversing can someone please clarify...
@dudekool12
@dudekool12 9 ай бұрын
Need this in Python!
@ajmalshahanpm938
@ajmalshahanpm938 9 ай бұрын
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"));
@MS-gi3hc
@MS-gi3hc 9 ай бұрын
Thank you
@alikh5601
@alikh5601 9 ай бұрын
Saved
@ITRebels
@ITRebels 8 ай бұрын
awesome
@Spartan-v1i
@Spartan-v1i 3 ай бұрын
Sir make full course about game developement and javascript full dsa video
@MBXD001
@MBXD001 4 ай бұрын
so after this we can go to leetcode and start grinding ?
@chrisa.4022
@chrisa.4022 4 ай бұрын
probably not
@vijayakabajo
@vijayakabajo 9 ай бұрын
0:22 He owns a farm
@МарияЕфимова-ч4б
@МарияЕфимова-ч4б 8 ай бұрын
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 }
@moshtabamorsali
@moshtabamorsali 7 ай бұрын
I did each of them in a different way but still working in the same performance😶‍🌫
@nicolasmanns7249
@nicolasmanns7249 8 ай бұрын
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
@MBXD001
@MBXD001 2 ай бұрын
Your solution for titleCase will not work if there is a character that is already uppercase so ArrayChunking solution and TitleCase Solution function titleCase(str) { return str.toLowerCase().split(' ').map(char=>char[0].toUpperCase() + char.slice(1)).join(' ') } function chunk(array, size){ let arr = [ ] for(let i =0;i
@asilvap
@asilvap 9 ай бұрын
Honestly, any companies could ask questions like these?
@rishiraj2548
@rishiraj2548 9 ай бұрын
👍🙂👍
@euroclydon7883
@euroclydon7883 5 ай бұрын
const palindromeWithTwoPointers = (str: string) => { let left = 0; let right = str.length - 1; while (left < right) { if (str[left] !== str[right]) { return false; } left++; right--; } return true; };
@m0slah
@m0slah 9 ай бұрын
@SaeedITSpot
@SaeedITSpot 9 ай бұрын
🎉🎉🎉
@ajiteshmishra0005
@ajiteshmishra0005 7 ай бұрын
for(var i = 1; i { console.log(i); }, 1200); } Output is 4 4 4 & for(let i = 1; i { console.log(i); }, 1200); } Output is 1 2 3 Why??
@giftedfingers2580
@giftedfingers2580 7 ай бұрын
The for loop is using var which in turn the compiler recognizes the var but not its value. Second, the setTimeout has an arrow function and that creates a closure.
@HazimTulumovic
@HazimTulumovic 7 ай бұрын
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]; }
@phyapanchakpram
@phyapanchakpram 8 ай бұрын
//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,' '); }
@DavidDroddy
@DavidDroddy 8 ай бұрын
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}`); }
@subashstino899
@subashstino899 9 ай бұрын
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 9 ай бұрын
this video course is the best for learning algorithms in Javascript :p
@phyapanchakpram
@phyapanchakpram 8 ай бұрын
//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; }
@Akintomidevictor-nx8xf
@Akintomidevictor-nx8xf 3 ай бұрын
Dear Instructor I hope you're doing well. I'm Victor, a student in your Machine Learning Model Deployment with Stream lit class. I’m reaching out for some clarification on [Machine Learning Model Deployment with Stream lit], as I’m having difficulty understanding certain parts. Could you please provide further guidance or suggest additional resources? If possible, I’d appreciate a brief meeting during your office hours. Thank you for your time and help! Best regards, Victor,
@dogukankarabeyin3059
@dogukankarabeyin3059 9 ай бұрын
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 9 ай бұрын
i'm sure no one understand this
@HazimTulumovic
@HazimTulumovic 7 ай бұрын
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]; }
Javascript Coding Interview Questions- You Must Know Them
17:06
Monsterlessons Academy
Рет қаралды 19 М.
How I would learn Leetcode if I could start over
18:03
NeetCodeIO
Рет қаралды 733 М.
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
REAL or FAKE? #beatbox #tiktok
01:03
BeatboxJCOP
Рет қаралды 18 МЛН
СИНИЙ ИНЕЙ УЖЕ ВЫШЕЛ!❄️
01:01
DO$HIK
Рет қаралды 3,3 МЛН
JavaScript Interview Prep: Functions, Closures, Currying
1:29:03
freeCodeCamp.org
Рет қаралды 163 М.
Top 7 Algorithms for Coding Interviews Explained SIMPLY
21:22
Codebagel
Рет қаралды 459 М.
Data Structures and Algorithms in JavaScript - Full Course for Beginners
1:52:55
LeetCode was HARD until I Learned these 15 Patterns
13:00
Ashish Pratap Singh
Рет қаралды 659 М.
Graph Algorithms for Technical Interviews - Full Course
2:12:19
freeCodeCamp.org
Рет қаралды 1,2 МЛН
10 JavaScript Interview Questions You HAVE TO KNOW
13:41
James Q Quick
Рет қаралды 76 М.
JavaScript Data Structures: Getting Started
1:36:47
Academind
Рет қаралды 243 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 695 М.
JavaScript Coding Interview Tricks (Must Know)
11:54
Conner Ardman
Рет қаралды 4,7 М.
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН