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; };
@sayedrezaomid13059 ай бұрын
I am very happy that i saw my Afghan and ex colleaque trainings at this channel.
@augustoeduardo2099 ай бұрын
Beatiful countryside landscape.
@MyCodingDiary9 ай бұрын
You're changing lives with your content. Keep inspiring!
@WhitneyChakara9 ай бұрын
This is excellent and able to be completed as it's short and straight to the point.
@lavendercode9 ай бұрын
Awesome video! Thank you for making it 😀
@atultrp19 ай бұрын
// 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 }
@Emblazon4 ай бұрын
yea, using two pointers is faster
@Website_TV_12 ай бұрын
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_haniii8 ай бұрын
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 }
@mahmoudzakria69465 ай бұрын
function palindrome(str){ return str === [...str].reverse().join("") }
@khanhphamthanh50129 ай бұрын
amazing spiral Matrix. It really so hard for me to find out the way. Thank you for your code
@sergeynazarov24739 ай бұрын
Perfect, trainees will be ready!
@MrMouniruss20 күн бұрын
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; }
@narekmeliksetyan019 ай бұрын
it was very useful. but I will suggest the following solution for problem 9. function foo(n){ for(i=1;i
@vnm_89458 ай бұрын
You could just use Array(i) instead of Array.from({length:i}), nice solution!
@andrewwall27302 ай бұрын
Very informative. Thanks so much for sharing. Though there is a simpler solution for #9, steps: const steps = n => { for (let i = 1; i
@nazardzys75147 ай бұрын
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_aha47139 ай бұрын
12:23 function pal(str){ console.log(str) if (str === str.split('').reverse().join('')){ return true }else { return false } } console.log(pal(""))
@Asifpatel-b8o9 ай бұрын
So engaging and interesting thank you sir for this lecture ❤
@arzoohashimi5199 ай бұрын
Very informative and helpful.
@edwarddk90078 ай бұрын
my solution for the Pyramid String Pattern exercise: function pyramid(n, level, body, space) { if(level
@Mayur-w6v9 ай бұрын
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.-9 ай бұрын
1:39:20 This is such an overcomplication... One 'for' loop is more than enough here: for (let i = 1; i
@arzoohashimi5199 ай бұрын
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_13 ай бұрын
it was very useful, help me a lots for the interview
@savchenkoilliya91319 ай бұрын
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.
@nmephchik9 ай бұрын
var 🤢
@LokeshKumar-tk7ri9 ай бұрын
Thank you Free code Camp for providing DSA in Javascript and also need more content on JS DSA
@marioerichsen19779 ай бұрын
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('') }
@DavidMorenoH9 ай бұрын
OMG please do this but with Java or Python
@abdo013869 ай бұрын
Ther is ful apk in webstores
@MBXD0014 ай бұрын
so just with these, are we going to be able to complete the legacy js data structures algorithms certification on freecodecamp ?
@Aso-c6z9 ай бұрын
Love this video ❤
@lazarokabira29459 ай бұрын
Love this
@senthamarai_kannan.6 ай бұрын
function steps(num){ for(let i= 0; i < num; i++){ let str = '' " for(let j=0; j
@ajiteshmishra00057 ай бұрын
We want more videos on these String and Array manipulation methods and programming questions
@Adolfofilipe73699 ай бұрын
Thanks for your help 🎉🎉🎉🎉🎉🎉
@shulamohammad22759 ай бұрын
loved the tutorial by Mukhtar!
@FULLUPE15 ай бұрын
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б8 ай бұрын
function isPolindrom(str) { let check = str.split('').reverse().join(''); return str === check ? true : false }
@ManiSingh-gr7zi7 ай бұрын
Excellent, thank you.
@murshidalam19829 ай бұрын
Very helpful.
@kalechips9659 ай бұрын
These are way easier than "easy" leetcode problems.
@loaymohamed81344 ай бұрын
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
@Emblazon4 ай бұрын
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);
@ajiteshmishra00057 ай бұрын
We are learning well from these type of Videos But please zoom in something more so that we can see the screen properly.
@gauthamchengappa17023 ай бұрын
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' }
@giftedfingers25807 ай бұрын
I'm having a hard time understanding what part of the reverse function is the actual part doing the reversing can someone please clarify...
@dudekool129 ай бұрын
Need this in Python!
@ajmalshahanpm9389 ай бұрын
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-gi3hc9 ай бұрын
Thank you
@alikh56019 ай бұрын
Saved
@ITRebels8 ай бұрын
awesome
@Spartan-v1i3 ай бұрын
Sir make full course about game developement and javascript full dsa video
@MBXD0014 ай бұрын
so after this we can go to leetcode and start grinding ?
@chrisa.40224 ай бұрын
probably not
@vijayakabajo9 ай бұрын
0:22 He owns a farm
@МарияЕфимова-ч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 }
@moshtabamorsali7 ай бұрын
I did each of them in a different way but still working in the same performance😶🌫
@nicolasmanns72498 ай бұрын
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
@MBXD0012 ай бұрын
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
@asilvap9 ай бұрын
Honestly, any companies could ask questions like these?
@rishiraj25489 ай бұрын
👍🙂👍
@euroclydon78835 ай бұрын
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; };
@m0slah9 ай бұрын
❤
@SaeedITSpot9 ай бұрын
🎉🎉🎉
@ajiteshmishra00057 ай бұрын
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??
@giftedfingers25807 ай бұрын
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.
@HazimTulumovic7 ай бұрын
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]; }
@phyapanchakpram8 ай бұрын
//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,' '); }
@DavidDroddy8 ай бұрын
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}`); }
@subashstino8999 ай бұрын
Is this MERN Stack developer needs to Study DSA ???… And I want to know Any best book for DSA( Data structure and algorithms )……????
@feerfeja9 ай бұрын
this video course is the best for learning algorithms in Javascript :p
@phyapanchakpram8 ай бұрын
//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-nx8xf3 ай бұрын
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,
@dogukankarabeyin30599 ай бұрын
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.
@OthmaneAHMARLAHYA9 ай бұрын
i'm sure no one understand this
@HazimTulumovic7 ай бұрын
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]; }