No video

Open the Lock - Leetcode 752 - Python

  Рет қаралды 39,454

NeetCode

NeetCode

Күн бұрын

Пікірлер: 61
@NeetCode
@NeetCode 2 жыл бұрын
Python Code: github.com/neetcode-gh/leetcode/blob/main/752-Open-the-Lock.py Java Code: github.com/ndesai15/coding-java/blob/master/src/com/coding/patterns/bfs/OpenLock.java
@masternobody1896
@masternobody1896 2 жыл бұрын
can you make a video how we get a job at google
@masternobody1896
@masternobody1896 2 жыл бұрын
get good at leetcode? will it give me a job?
@thoufic907
@thoufic907 2 жыл бұрын
What was ur first thought when u saw this problem?
@prajwal2583
@prajwal2583 2 жыл бұрын
I thought you won't be posting anymore since you got a job at Google, your videos helps a lot
@chinesemimi
@chinesemimi 2 жыл бұрын
He’s been there for a year already!
@rawallon
@rawallon 2 жыл бұрын
@@chinesemimi That in covid years of human years?
@NaqushabNeyazee
@NaqushabNeyazee 2 жыл бұрын
At this point I have started listening to your content as a podcast. Great work!!
@rawallon
@rawallon 2 жыл бұрын
Who needs asmr when we got this
@lavanyam3224
@lavanyam3224 2 жыл бұрын
Just in case if you didn't know, -1%10 gives 9 in python. so we don't have to add 10 and perform modulo. Great video btw!
@tinali7149
@tinali7149 2 жыл бұрын
I tired to search this problem in your channel this morning but couldn’t find the video, and then you posted this video after I had lunch!
@homyakMilashka
@homyakMilashka 4 ай бұрын
I was so scared of this problem before I saw the graph and explanation, your explanations are golden.
@ambroseaurelian9696
@ambroseaurelian9696 2 жыл бұрын
Thank you, this why I love this channel the dedication. One day I will make you proud!
@fightmeonclubpenguin7748
@fightmeonclubpenguin7748 2 жыл бұрын
I got this question in my Amazon interview a couple months ago!
@siddharthr594
@siddharthr594 4 ай бұрын
What else did you get?
@unitycatalog
@unitycatalog 2 жыл бұрын
The space complexity is actually O(log 10000 to the base 8) because each combination only has 8 neighbor combinations, and the space needed for visited can be reduced by having a array of Boolean of size 10k (that is 10kb) or using a bit set (size 1.25 KB)
@jeevisiran21
@jeevisiran21 2 жыл бұрын
Hi Neetcode thanks for your neat explaination...can you pls solve leetcode 465. Optimal account balance problem...this question asked by Google and uber...and this problem is pretty unique!
@orangethemeow
@orangethemeow 2 жыл бұрын
It's so smart to add deadends to the visited set
@user-sk7tp3wv4m
@user-sk7tp3wv4m 4 ай бұрын
appreciate your efforts and big thanks to your explanation. It helps me not to quit practicing the leetcoode
@shahzebnaveed4776
@shahzebnaveed4776 2 жыл бұрын
For 1000 (10^4) possible combinations, we are also generating lock states within the outer while loop. Shouldn't that make the time complexity O(N * 10^4)?
@hassan7569
@hassan7569 2 жыл бұрын
Another day, another NeetCode video.
@chenzhuo9
@chenzhuo9 2 жыл бұрын
Hi Neet! Thanks for your videos! They are really helpful! Could you pls do 987. Vertical Order Traversal of a Binary Tree? This is a really popular question for FB (top 10). I think it will help many people! Thanks
@yunaf4609
@yunaf4609 2 жыл бұрын
Great explanation! This one was tricky because it uses the word "minimum" so I totally thought it was a DP problem and tried to attack it using DFS + memoization and I got stuck. But your explanation was really clear! :)
@zhen9445
@zhen9445 2 жыл бұрын
I think DFS + memoization still work if you keep update a minimum path variable and search all the working path? BFS can ensure when you first get the target, you are in the shortest path, so you don't need to search all the working path
@fa11en1ce
@fa11en1ce 2 жыл бұрын
Would've been interesting to see this solved using a* if you use each lock digit as a coordinate
@AchintBhat
@AchintBhat 6 ай бұрын
I was wondering if this could be solved by implementing a bidirectional search ... would be more efficient
@showmethemoney824
@showmethemoney824 2 жыл бұрын
Appreciate your effort and don’t stop posting
@wesammustafa9004
@wesammustafa9004 2 жыл бұрын
Simple and straightforward explanations. I'd appreciate it if you could extend the time allotted for explaining time and space complexity.
@MP-ny3ep
@MP-ny3ep 4 ай бұрын
Great explanation as always. Thank you !
@YasirYSR
@YasirYSR 2 жыл бұрын
in Love with this channel
@nathamuni9435
@nathamuni9435 2 жыл бұрын
Ooh 🤯 every intuitive
@pastori2672
@pastori2672 4 ай бұрын
felt terrible comming up with this solution just to know its basically as efficient as you can get it 😆👍
@amirbayat5713
@amirbayat5713 2 жыл бұрын
More of a Python question. How come we didn't return the res in the helper function but the for loop in the main function picked the child of children up? How come we can iterate through the res without having it returned? Thanks
@ks-mq3fm
@ks-mq3fm 2 жыл бұрын
Hi your videos are amazing Please share your interview experience
@Mcfly868
@Mcfly868 2 жыл бұрын
I wonder if A-Star search algo would improve average run time efficiency. It basically applies an estimation-cost-to-destination. depending on current_steps_taken + estimation-cost-to-destination, it will prioritize which state in the queue should be processed next. Reason i say i wonder, is because the worst case would be nlgn, which is worse than O(10000) in this case
@commonsolutions8825
@commonsolutions8825 11 ай бұрын
Shouldn’t “0000” be added to the visit set as well? What happens when children(1000) returns “0000”, wouldn’t that cause an infinite loop?
@commonsolutions8825
@commonsolutions8825 11 ай бұрын
It won’t cause an infinite loop but the queue will have “0000” appended to it twice. I think…
@utkarshagupte1178
@utkarshagupte1178 2 жыл бұрын
Wonderful explanation.
@shinsatori184
@shinsatori184 2 жыл бұрын
Thanks for the explanation. So clear!
@vatsalsinha9273
@vatsalsinha9273 2 жыл бұрын
Will it be a better approach to reverse the problem and start from target as root node and then try and reach 0000... ? I think it might save us some calculation of nodes not needed to trace in the tree. What do you think ?
@MrKulkoski
@MrKulkoski 2 жыл бұрын
it would be literally the same, the start and end positions don't matter
@tianmingguo8271
@tianmingguo8271 2 жыл бұрын
Great explanation.
@metarus208
@metarus208 2 жыл бұрын
thank you for soldiering on
@Deschuttes
@Deschuttes 2 жыл бұрын
Thanks need, please keep going.
@sudhaarulmani9218
@sudhaarulmani9218 2 жыл бұрын
Thank you 🙏
@telnet8674
@telnet8674 2 жыл бұрын
thank you
@irarose3536
@irarose3536 2 жыл бұрын
Thanks!
@beyond-convention
@beyond-convention 2 жыл бұрын
your videos are very good. what tools do you use to create videos
@mohithadiyal6083
@mohithadiyal6083 2 жыл бұрын
What is Neetcode's leetcode profile?
@stanleyokoli212
@stanleyokoli212 2 жыл бұрын
Who has an idea what tool neetcode use for presentation? the whiteboard/pen part? Thanks
@CostaKazistov
@CostaKazistov 2 жыл бұрын
I was wondering that too. Have seen others do whiteboard/pen with OneNote. But I'm sure there are better options than OneNote available (especially on Mac).
@dpynsnyl
@dpynsnyl Жыл бұрын
Shouldn't we have added "0000" to the visit set in the beginning?
@nishantingle1438
@nishantingle1438 2 жыл бұрын
Once you see 3:01 then its just good ol' BFS
@barnetthan9391
@barnetthan9391 4 ай бұрын
ur a goat
@techenthusiast3966
@techenthusiast3966 2 жыл бұрын
Which softwares do you use to record and draw?
@NeetCode
@NeetCode 2 жыл бұрын
I use Paint3D
@jay-hk5oo
@jay-hk5oo 4 ай бұрын
can we use dfs?
@nishadkanago4393
@nishadkanago4393 Жыл бұрын
I have written code like this in c++ but this is leading to TLE and I cant figure out why ? Can anyone help class Solution { public: vector children(string x) { vector v; for (int i=0; i
@ilanvinograd2631
@ilanvinograd2631 4 ай бұрын
Hi, even though it's been over 9 months, I'd be happy if this information is still relevant. Your code didn't work because of the line if (find(s.begin(), s.end(), child) == s.end()). You don’t need to use iteration from beginning to end because it's inefficient. Instead, you can use the more efficient find() function of an unordered set, like s.find(child) == s.end(). This approach reduces the time complexity to O(1) when you change from set to unordered_set. Here's an example: class Solution { public: vector children(string x) { vector v; for (int i = 0; i < 4; i++) { char a = (((x[i] - '0') + 1) % 10) + '0'; v.push_back(x.substr(0, i) + a + x.substr(i + 1)); char b = (((x[i] - '0') - 1 + 10) % 10) + '0'; v.push_back(x.substr(0, i) + b + x.substr(i + 1)); } return v; } int openLock(vector& deadends, string target) { if (find(deadends.begin(), deadends.end(), "0000") != deadends.end()) return -1; queue q; q.push({"0000", 0}); unordered_set s({"0000"}); //
@supremoluminary
@supremoluminary 4 ай бұрын
You go into the code too soon. Not enough explanation. Sorry.
Remove K Digits - Leetcode 402 - Python
14:36
NeetCode
Рет қаралды 61 М.
Snakes and Ladders - Leetcode 909 - Python
21:22
NeetCode
Рет қаралды 50 М.
Zombie Boy Saved My Life 💚
00:29
Alan Chikin Chow
Рет қаралды 34 МЛН
Cute kitty gadgets 💛
00:24
TheSoul Music Family
Рет қаралды 21 МЛН
752. Open the Lock | BFS | Graph | Time Complexity | Why not DP?
25:53
How I Failed the Google Coding Interview (and lessons I learned)
14:24
Mastering Dynamic Programming - How to solve any interview problem (Part 1)
19:41
Network Delay Time - Dijkstra's algorithm - Leetcode 743
19:48
5 Useful F-String Tricks In Python
10:02
Indently
Рет қаралды 302 М.
Decode String - Leetcode 394 - Python
16:26
NeetCode
Рет қаралды 84 М.
Text Justification - Leetcode 68 - Python
17:52
NeetCodeIO
Рет қаралды 24 М.
How to Solve ANY LeetCode Problem (Step-by-Step)
12:37
Codebagel
Рет қаралды 201 М.
How Fast can Python Parse 1 Billion Rows of Data?
16:31
Doug Mercer
Рет қаралды 216 М.
Restore IP Addresses - Leetcode 93 - Python
17:44
NeetCode
Рет қаралды 42 М.