This is great. I did the MIT Online Introduction to Computation and Programming using Python course and am currently working to build my freelance business. This will be a major boost. Thank you.
@@yourfriendlyneighborhood5547 Introduction to Computation and Programming using Python with Application to understanding Data by John V Guttag. I keep it here at my desk for reference when needed.
@@muchintalasushmith1367 Well as far as I covered in that course I can say that it's for absolute beginners in Python and computer science. It's actually kinda slow imo bcoz I already knew Python to some extent. Conclusion - if you just need to gather knowledge audit the course in edx platform without paying(it's actually worth to pay if you want a certificate). This course is not just Python, it also teaches us some fundamentals in computer science, that's why it's great for beginners.
10:33:49 The algorithm picks 2-3-4-8 as the shortest path, total distance 15, while in fact the 2-3-0-8 path has a shorter distance of 12. I think this error is due to using the wrong graph data (num_nodes2, edges2). The right data that represents the graph should be num_nodes5, edges5.
correct, although i made the algorithm myself raw from pseudocode and mine gives correct answer, i think they should write the code to avoid these reduncancies
for make the correct answer, only change the conditional where it says: if next_node:, put instead if next_node is not None, and thats it, the code gives the correct answer.
Oh wow this is just what I needed. Every time im studying something new you upload it within a day I swear this channel is a miracle and a gift from god. Thank you!
30 mins and I am already in love with this course . Thank you akash for your efforts to help us. The way you explained to approach a problem was absolutely great
Oh my God. That's exactly what I needed! I just started watching your Data Structures Course, but I wanted it to be Python-related. So here we go! 12 hours of free high-quality content. Thank you.
@@shubhamkumar-nw1ui Only the implementation is different. Abstract data types like graphs or queues exist beyond a programming language, but the way you implement them depends on a programming language. Just learn DS the way you're more comfortable with.
Watch this 2x... Implement in Java or C++ Do 1 hour increments alongside 2 hour increments for introduction to algorithm books Do 1 hour leetcode blocks Congrats, you're understanding is at a new level.
In the second python interview question, It was intention and execution that you began with and not intention and exception. Nevertheless the writing steps in plain English to solve the problem was life saving.
there was a problem in binary search (1:08:06).first elif i think this should be lo=mid+1.bcs query is greater than midnumber so we have to search right side of the array.and next elif it should be hi=mid-1.
started this course few days ago. For a complete beginner like myself it is completely helpful although i'm struggling to progress but this course is exactly what i need.
These guys are really great I completed their data analysis and machine learning course. I am looking forward to complete their Deep learning course too Thank you very much Jovian and freecodecamp
i am at 1:56:00 edit 2:35:37 edit_2 2:55:05 edit_3 3:11:58 edit_4 3:21:00 edit_5 3:32:52 edit_6 3:38:00 edit_7 4:01:29 edit_8 4:30:20 edit_9 5:34:00 edit_10 6:17:00 edit_11 8:27:00 edit_12 10:00:00 (nice) edit_ 13 10:40:00 i guess we are in the end game now ps nevermind this comment its just a *bookmark*
Is it worthy to spend time on this tutorial?? I am thinking to start this course bt worried about the timing can you please share your experience @Shiva Kharbanda
you have no idea how long i was waiting for this. I learnt cpp just for DSA and now you release this. i don't care, I'm doing this one for sure. I'll check out the cpp one later. FCC is really god's gift to mankind.
@@siddhantpathak9405 I started learning it from the GFG DSA course. But from a usefulness perspective, this course is much better at equipping you with skills to tackle actual problems.
@@sreyanghosh4003 Yes! this one is much more practice/Interview oriented, seems it is important to learn DSA beforehand for this course, and.... Thanks for the tip :>
Hi Akash, Just want to apprecite your work and the efforts you have put in this course, I am doing programming since long and currently working as an engineer, but this course changed the way of my programminng, have saw so many such course but this one is truly exceptional.
I don't think 7:36:00 is correct: Memoization-exclusive time complexity doesn't seem to be 2^m+n, given m and n are the nums of elements in two sequences. first, finding the longest common subsequence by quick sort would be meaningless if one of the lists/sequences is exhausted, regardless of the remainders within the other. That means, and as stated by the code itself, the code will stop getting rid of character/ element when there's no more comparison to take place, so making "all leaves end at 0, 0" unachievable. (They either stuck in a loop like (1, 0) would generate (1, 0) and (0, 0) or could not be proceeded further.) So, based on the above, it looks like the tree is not a symmetrical binary and hence 2^x could no be induced from the statement "each element would cause two possible choices to be made". But when we tried that -- 2^(m+n) -- with small numbers, it does approximate what was stated and seemed to be true. Let's say [a, b] & [c, d]. but as the quantity of input gets exponentially larger, I'm no longer convinced that is still correct. When we're given a fixed yet allocable nums of elements (you can see this as you gambling chips), the max num we could potentially get from them from a multiplication is through the minumum difference between the two numbers. (like how 2x2 > 1x3) So, the worst case where iteration would be at maximum, under the circumstance that total num of elements of both sequences are fixed, would be when seq1 and seq2 have the same number. And now what would be the other extreme case? I'm sure you can tell it's when there is only one element in seq1 and the remainder in seq2. The time complexity of that would be: (2 x N of the longest sequence)+1 and the leaves would just be N+1. Now let's get back to the "worst of worst" case. I've tried to construct the binary tree up to (4, 4) root and noticed it does resemble a perfect, symmetrical binary tree but with surplus leaves (the number of leaves after you filled out all the gaps left by a zero-sth pairs to make it a perfect binary). And my conclusion was that the time complexity should be of 2 to the power of the height of tree, instead of simply adding m and n. The increment or trend of the surplus leaves is a multiplication of 4 for every one element added to both sequences: I had 4 leaves at (2, 2), 8 at (3, 3), and 12 at (4, 4), so on and forth. And we know that exponent has a greater growing power than multiplication, so eventually the disparity between the number given by m+n and the surplus leaves would be exponentially greater. From the sum of geometrical series, if we substitute a with 1 and r with 2, we know that the sum of all the nunber of nodes (including leaves) of a h-layer tree would be approximately 2^h. And for a same-number pair root, the height of the tree (excluding root and surplus leaves) is just 2n-2. On a side note, we can now deduce that if we toggle the number on the scale, let say from a fixed total of 10, the number of nodes would lie somewhere between 19 to ~256. Hence, it would be more intuitive (for me, personally) to say that the time complexity of the quick sort that without memoization would be ~ 2^h, for which h is the number of layers excluding root (or counting from 0 if you wanna do so). But, ultimately, it's just the matter of 2^n+2, so I assumed it doesn't affect much. In the end, worst case of memoization (which simply is m*n) would beat 2^(2n-2).
Simplest solution for the first problem: Gemini write a function which takes a list of integers and a integer and then if the given integer exist in the given list of integers return its index or else return -1
@@maxwelleaster4124 cause I'm preparing for my interview was doing hackerrank but needed some structured path. There are many paths I've came cross but mostly were not on python. This one seems better to my liking ✌️
Finally after paying to udemy and buying a bunch of courses, I end up here, with this 12 hour long beautiful Python data structures courses. Too bad I already completed a data structure course. But willing to take this again.
This video is the best resource to learn DSA , especially if u r new to this concept. Love the explanation, clarity in the content. Great video. It demystified all the myths i had about DSA.
The first video I watched about DSA and it turned out to be one of the best one. I have almost completed an hour, planning to watch it for full 12 hours.
Sir, it seems that you made a mistake in Dijkstra's algorithm when assessing the shortest path between 2 and 8--I think it should be 2,3,0,8 -- 12 instead of 15. I made it 12 following your pseudocode, so I have no idea about the issue. Anyway, great course!
Hey Harishita , Did you completed this entire course ? If yes , is this course worth watching to crack tests of product based companies and practise on leetcode ?
Thank you so much for the lesson man. I wish you could hear me screaming that you are checking two different strings "exception" and "execution". Anyway great video!
@@moonlight-td8ed Yeah, I had to drop that course too. It just didn't really get into the nuances and details and real-world applications of the algorithms and data structures. And the way they had the whole thing pre-written made it super hard to follow along. If you're totally new to this stuff, I'd recommend starting with the Code Basics channel instead. Their Data Structures and Algorithms in Python playlist (ruclips.net/p/PLeo1K3hjS3uu_n_a__MI_KktGTLYopZ12&si=2nsP-rpd9BbYYH86) is way more beginner-friendly and has great visual explanations. Once you've got the basics down, check out Greg Hogg (youtube.com/@GregHogg?si=xWF7x8uaske9ADbi) and NeetCodeIO (youtube.com/@NeetCodeIO?si=v7OypMWD0GF61I26) for LeetCode problem walkthroughs and solutions. Oh, and if you can spare the cash, NeetCode's Beginner's Guide course on their website is supposed to be really good too! Probably worth the investment if you want that structured full course experience. Some recommendations learning DSA : use a ton of Google, after learning the theory and the mechanics from watching a video or reading from text I would recommend trying to write the code yourself and that don't just dive into the code rather think about the solution in your head or maybe even write it out as to what you are trying to achieve and how you are going to achieve and then you can try if it doesn't work you have now some knowledge as to where it lacks and what is missing so that you can look up the answer. From personal experience don't be so hard on yourself that you just start beating yourself as to why you can come up with the solution try if yourself if you could solve it good, if not then it's not the end of the world and think of it as a journey right that on and in no time you would be able to implement and solve these problems. But make sure after you lookup the solution make sure to understand personally adding print statements right to describe and seeing how the algorithms change and work really helped me deepen my knowledge of algorithms and try not to memorize the solution rather the patterns so that I you see a similar question your are easily able to understand what the problem wants you to do. Just my two cents! Let me know if you have any other questions.
Hi, I just have figured it out after a while In the function shortest_path, the last line is " if next_node: queue.append(next_node) ", the problem is, when next_node == 0, the condition is False, and it will not append 0 to the queue The solution to this is you just need to change it to if next_node != None, and it will work !
This English version video is 12 hours and 30 minutes long but the same playlist in Hindi by the same instructor and same course content runs for 11 hours and 11 minutes. So Hindi language is so effective that it needs less words to communicate?
FreeCodeCamp what's the difference between this course and the other 2 hours long one? What would be the reasons for recommending each one? I want to get into these courses quite seriously and is expecting some advice.
I am new to the python learning world and looking for some good dsa tutorials with problem-solving approaches and guess what, I found his tutorial. this is just super amazing for any beginner. Now I think I can clear my coding interviews with confidence. Thank you so much for this tutorial, wish i could found more of your tutorials on python on youtube. can you give me links on oops in python as well.
This is advanced maybe intermediate. Personally, I wouldn't start python with this but more if statements and basic language but if your picking up and doing it have fun course.
I'm new to programming algorithms. I used a recursive function to locate the 1st repeating card, does it increase the complexity in any way? def check1st(card, mid): if mid-1 >= 0 and card[mid] == card[mid-1]: return check1st(card, mid-1) else: return mid Thank you!
Going to be working through this over time (and I'm doing C# so that'll add maybe some extra challenge transposing everything lol) but thank you! I've been trying to find some better practice/info about how to learn algorithms and coding patterns, and using this (along with leetcode, which I wasn't aware of before) is exactly what I need
1:16:56 Please tell me why do we write a whole new function for the duplicate elements present when simple sort and set functions do the job. Eg:- [8,6,6,6,4,3,2,1,0] After sorting [0,1,2,3,4,6,6,6,8] Now list(set function) gives [0,1,2,3,4,6,8] Now it gives the position as 5. Can anyone explain ???
⭐️ Course Contents ⭐️
⌨️ (00:00:00) Introduction
⌨️ (00:01:43) Binary Search Linked Lists and Complexity
⌨️ (00:03:43) Introduction
⌨️ (00:08:35) Problem
⌨️ (00:12:17) The Method
⌨️ (00:13:55) Solution
⌨️ (00:50:52) Complexity and Big O notation
⌨️ (01:24:57) Binary Search vs Linear Search
⌨️ (01:31:40) Generic Binary Search
⌨️ (01:40:08) Summary and Conclusion
⌨️ (01:44:30) Assignment Walkthrough
⌨️ (01:45:05) Introduction
⌨️ (01:50:01) Problem- Rotated Lists
⌨️ (01:53:02) The Method
⌨️ (01:54:03) Solution
⌨️ (02:30:47) Summary and Conclusion
⌨️ (02:33:29) Binary Search Trees Python Tutorial
⌨️ (02:34:41) Introduction
⌨️ (02:37:36) Problem
⌨️ (02:38:40) The Method
⌨️ (03:13:58) Binary tree
⌨️ (03:27:16) Traversing Binary Tree
⌨️ (03:36:10) Binary Search Tree
⌨️ (04:22:37) Self-Balancing Binary Trees and AVL Trees
⌨️ (04:26:27) Summary and Conclusion
⌨️ (04:30:33) Hash Tables and Python Dictionaries
⌨️ (04:31:09) Introduction
⌨️ (04:34:00) Problem
⌨️ (04:40:28) Data List
⌨️ (04:42:52) Hash Function
⌨️ (04:54:52) Basic Hash Table Implementation
⌨️ (05:03:07) Handling Collisions with Linear Probing
⌨️ (05:09:24) Summary and Conclusion
⌨️ (05:16:47) Sorting Algorithms and Divide & Conquer
⌨️ (05:17:48) Introduction
⌨️ (05:20:19) Problem
⌨️ (05:21:27) The Method
⌨️ (06:40:49) Custom Comparison Functions
⌨️ (06:48:53) Summary and Conclusion
⌨️ (06:54:57) Recursion Memoization & Dynamic Programming
⌨️ (06:56:37) Introduction
⌨️ (07:00:04) Problem
⌨️ (07:04:28) The Method
⌨️ (07:06:21) Solution
⌨️ (08:06:13) Knapsack Problems
⌨️ (08:08:48) The Method
⌨️ (08:09:24) Solution
⌨️ (08:43:26) Summary and Conclusion
⌨️ (08:44:05) Graph Algorithms BFS, DFS & Shortest Paths
⌨️ (08:45:02) Introduction
⌨️ (08:51:00) Graph Data Structure
⌨️ (09:15:57) Graph Algorithms - Breadth-First Search
⌨️ (09:37:28) Depth-First Search
⌨️ (10:08:26) Shortest Paths
⌨️ (10:40:39) Summary and Conclusion
⌨️ (10:42:21) Python Interview Questions Tips & Advice
⌨️ (10:43:09) Introduction
⌨️ (10:44:08) The Method
⌨️ (10:47:10) Solution
⌨️ (12:30:51) Summary and Conclusion
NOTE: this is not copied from the description , description is copied from this. So i didn't copy pasted, description is copy pasted from this
TRUE HERO
Is this course helpful for data analyat
1
thanks bro
thanx bro lots of respect
İndians really really awesome actually,they are teaching coding to almost half of IT industry.Thanks brother
unfortunately all theyre good at is theory.
@@penultimania4295 at least people like you can learn and make practicals.
@@penultimania4295 still ahead of your league
That’s why google and youtube and microsoft ceo are Indians
Wow. Serious racism going on in here. Lol.
This is great. I did the MIT Online Introduction to Computation and Programming using Python course and am currently working to build my freelance business. This will be a major boost. Thank you.
Wow I'm exactly doing the same now lol, best of luck bruv 👍
Is that course good and highly recommended.?!
@@zigginzag584 wait you bought the course book? What's the name of it?
@@yourfriendlyneighborhood5547 Introduction to Computation and Programming using Python with Application to understanding Data by John V Guttag. I keep it here at my desk for reference when needed.
@@muchintalasushmith1367 Well as far as I covered in that course I can say that it's for absolute beginners in Python and computer science. It's actually kinda slow imo bcoz I already knew Python to some extent. Conclusion - if you just need to gather knowledge audit the course in edx platform without paying(it's actually worth to pay if you want a certificate). This course is not just Python, it also teaches us some fundamentals in computer science, that's why it's great for beginners.
Thanks
10:33:49 The algorithm picks 2-3-4-8 as the shortest path, total distance 15, while in fact the 2-3-0-8 path has a shorter distance of 12. I think this error is due to using the wrong graph data (num_nodes2, edges2). The right data that represents the graph should be num_nodes5, edges5.
but i checked for proper graph(num_nodes5, edges5), the algorithm give value of 15. Do you know why?
correct, although i made the algorithm myself raw from pseudocode and mine gives correct answer, i think they should write the code to avoid these reduncancies
for make the correct answer, only change the conditional where it says: if next_node:, put instead if next_node is not None, and thats it, the code gives the correct answer.
Oh wow this is just what I needed. Every time im studying something new you upload it within a day I swear this channel is a miracle and a gift from god. Thank you!
Literally💯
@@Coders_Worldruclips.net/video/B7-ppAdHO80/видео.htmlsi=miQ06U1FKMzIDzki
Exactly what I needed and precisely when I needed it. My excitement is immeasurable and my day is saved. Thank you!
'My excitement is immeasurable and my day is saved.'
lol i see what you did there.
How far did u reach?
@@Ramdoot_Shubham dude probably quit 5 minutes in lol
30 mins and I am already in love with this course . Thank you akash for your efforts to help us. The way you explained to approach a problem was absolutely great
have you completed this course?
Brother have you completed this course .how is it? Pls reply
hello bro ,i have one doubt how to enroll in free to this course because now its not showing .please guide me!!!!
By the first 15 minutes, I already got this hope, this guy would make me Learn DSA for sure.😊
Oh my God.
That's exactly what I needed! I just started watching your Data Structures Course, but I wanted it to be Python-related. So here we go! 12 hours of free high-quality content.
Thank you.
did u complete?
Can anyone tell How is learning DS and algo in python different from learning it in. C/C+ ?
@@arkumar842 Have watched 1/4 of the whole thing.
@@shubhamkumar-nw1ui Only the implementation is different. Abstract data types like graphs or queues exist beyond a programming language, but the way you implement them depends on a programming language. Just learn DS the way you're more comfortable with.
Is the 12 hours worth it?
Brilliant course. Hits the nail on the head. Aakash you are such a good teacher. Hats off to you.
Watch this 2x...
Implement in Java or C++
Do 1 hour increments alongside 2 hour increments for introduction to algorithm books
Do 1 hour leetcode blocks
Congrats, you're understanding is at a new level.
.
could youmake this a bit more breif enough
@MrVontar can you explain more it will really help me thanks in advance
Timestamps for personal reference:
8:38 - 2:33:28 - Lesson 1 : Binary Search
2:33:29 - 3:36:10 - Lesson 2: Binary Trees
3:36:11 - Lesson 2.5: BST
In the second python interview question, It was intention and execution that you began with and not intention and exception. Nevertheless the writing steps in plain English to solve the problem was life saving.
there was a problem in binary search (1:08:06).first elif i think this should be lo=mid+1.bcs query is greater than midnumber so we have to search right side of the array.and next elif it should be hi=mid-1.
the array was sorted in decreasing order
The array is in decreasing order it start from hight to low
Finaaaaaaallllyyyy in Python 😭😭😭😭😭😭😭😭😭
I literally waited for this for soooooo loooonnnnggggg
Same feeling bro 😂✌️
Same mann 😂
Yeahh man same here😭😂
अपना समय आ गया😭
The previous one from Treehouse was also in Python, but this one is waaay more thorough. Nice.
started this course few days ago. For a complete beginner like myself it is completely helpful although i'm struggling to progress but this course is exactly what i need.
Every topic is covered in this video??
@@mohan4185 Pirate King said he got through FANG interviews with this course, this should be good enough😅
Am not understanding this can someone help me out
I started this course today onwords i will update everyday keep track of the course 00:00:00
Come back
These guys are really great I completed their data analysis and machine learning course.
I am looking forward to complete their Deep learning course too
Thank you very much Jovian and freecodecamp
Could you share that DA ML course link??
Was it from Jovian or Freecodecamp?
And how was it?
Can you write your review about the same ?It would be really helpful. Thanks
Put 00:00 at the beginning of the course content section in the description. Then the video will be divided into chapters.
Thanks. That worked.
@@quincylarsonmusic Hello there!!! Thank you for your platform!!!
Thanks....gonna help for sure...
@@quincylarsonmusic Thank you for everything. Not seeing the chapters on the timeline, latest Chrome on Mac.
@@travbrack same here, using brave on linux, however I can see the different chapters on other videos.
Excellent Course! Subject matter and contents are clearly articulated and easy to follow. I've learned a lot. Thank you!
Hey man just wanted to thank you. Brilliant course. Teaching problem solving ain't easy but somehow you hit it spot on
00:00 ✅
1:50:00 ✅
2:35:00 ✅
3:38:00 ✅
4:30:00 ✅
5:17:00 ✅
6:55:00 ✅
8:44:00
⭐ Course Contents ⭐
⌨ (00:00:00) Introduction
⌨ (00:01:43) Binary Search Linked Lists and Complexity
⌨ (00:03:43) Introduction
⌨ (00:08:35) Problem
⌨ (00:12:17) The Method
⌨ (00:13:55) Solution
⌨ (00:50:52) Complexity and Big O notation
⌨ (01:24:57) Binary Search vs Linear Search
⌨ (01:31:40) Generic Binary Search
⌨ (01:40:08) Summary and Conclusion
⌨ (01:44:30) Assignment Walkthrough
⌨ (01:45:05) Introduction
⌨ (01:50:01) Problem- Rotated Lists
⌨ (01:53:02) The Method
⌨ (01:54:03) Solution
⌨ (02:30:47) Summary and Conclusion
⌨ (02:33:29) Binary Search Trees Python Tutorial
⌨ (02:34:41) Introduction
⌨ (02:37:36) Problem
⌨ (02:38:40) The Method
⌨ (03:13:58) Binary tree
⌨ (03:27:16) Traversing Binary Tree
⌨ (03:36:10) Binary Search Tree
⌨ (04:22:37) Self-Balancing Binary Trees and AVL Trees
⌨ (04:26:27) Summary and Conclusion
⌨ (04:30:33) Hash Tables and Python Dictionaries
⌨ (04:31:09) Introduction
⌨ (04:34:00) Problem
⌨ (04:40:28) Data List
⌨ (04:42:52) Hash Function
⌨ (04:54:52) Basic Hash Table Implementation
⌨ (05:03:07) Handling Collisions with Linear Probing
⌨ (05:09:24) Summary and Conclusion
⌨ (05:16:47) Sorting Algorithms and Divide & Conquer
⌨ (05:17:48) Introduction
⌨ (05:20:19) Problem
⌨ (05:21:27) The Method
⌨ (06:40:49) Custom Comparison Functions
⌨ (06:48:53) Summary and Conclusion
⌨ (06:54:57) Recursion Memoization & Dynamic Programming
⌨ (06:56:37) Introduction
⌨ (07:00:04) Problem
⌨ (07:04:28) The Method
⌨ (07:06:21) Solution
⌨ (08:06:13) Knapsack Problems
⌨ (08:08:48) The Method
⌨ (08:09:24) Solution
⌨ (08:43:26) Summary and Conclusion
⌨ (08:44:05) Graph Algorithms BFS, DFS & Shortest Paths
⌨ (08:45:02) Introduction
⌨ (08:51:00) Graph Data Structure
⌨ (09:15:57) Graph Algorithms - Breadth-First Search
⌨ (09:37:28) Depth-First Search
⌨ (10:08:26) Shortest Paths
⌨ (10:40:39) Summary and Conclusion
⌨ (10:42:21) Python Interview Questions Tips & Advice
⌨ (10:43:09) Introduction
⌨ (10:44:08) The Method
⌨ (10:47:10) Solution
⌨ (12:30:51) Summary and Conclusion
best
i am at 1:56:00
edit 2:35:37
edit_2 2:55:05
edit_3 3:11:58
edit_4 3:21:00
edit_5 3:32:52
edit_6 3:38:00
edit_7 4:01:29
edit_8 4:30:20
edit_9 5:34:00
edit_10 6:17:00
edit_11 8:27:00
edit_12 10:00:00 (nice)
edit_ 13 10:40:00 i guess we are in the end game now
ps nevermind this comment its just a *bookmark*
Is it worthy to spend time on this tutorial?? I am thinking to start this course bt worried about the timing can you please share your experience @Shiva Kharbanda
@Shiva Kharbanda
@@shantanupabitwar1440 this course is a good place to start if you know the basics of python and have some coding experience. You should go for it
For an entire 5 min he was looping and rambling about his online course!!! Damn!
This video is free just for that
A good substitute for the hashing function is just the "hash()" function in python since it uses a collision free algorithm called siphash.
Thank you man 🙏🙏
you have no idea how long i was waiting for this. I learnt cpp just for DSA and now you release this. i don't care, I'm doing this one for sure. I'll check out the cpp one later. FCC is really god's gift to mankind.
Agreed
where did you learn cpp from, buddy ??
@@siddhantpathak9405 I started learning it from the GFG DSA course. But from a usefulness perspective, this course is much better at equipping you with skills to tackle actual problems.
so compitative in python will help us in future or else should we go with cpp or java
@@sreyanghosh4003 Yes! this one is much more practice/Interview oriented, seems it is important to learn DSA beforehand for this course, and.... Thanks for the tip :>
I watched first 1 hour of the video, the instructor was more interested in promoting his platform and in features than the actual DSA
Nothing is free man. Absorb only the required parts
You deserve 100 million views. ❤
Thanks a lot for your great efforts.
This it to keep track where I am in the video:
21:54
1:20:20
2:11:00
2:42:28
3:22:25
3:32:00
4:13:00
4:33:15
5:22:13
Bro you gave up?
@@powerofgames3600 yea ;-;
I was doing this during class in school, but then something happened and I had to focus on class for a hot minute
@@powerofgames3600 bro shall we complete this one together?
get it back. You got this!
@@deuteriumtritium9700 yea- your RIGHT!
Imma start this grind back up >:D
For the max and min key in the BST. You can think of the min key as the leftmost node and max key as the rightmost node.
Hi Akash, Just want to apprecite your work and the efforts you have put in this course, I am doing programming since long and currently working as an engineer, but this course changed the way of my programminng, have saw so many such course but this one is truly exceptional.
This course is awesome!!! wide range of topics are discussed here. Thank you!!
Super appreciating this video. Just what I have looking for 🙌🏾
This is soo good...very beginner friendly loved it❤
I think there's an error at 6:37:47:
n + (n-1) ... should = n*(n+1)/2, instead of minus one, but it shouldn't be a big deal because it's still O(n^2).
This one video is going to save so many lives.
Free course is always beat source to learn technology for complete beginners. Thanks for the video🙏
I don't think 7:36:00 is correct:
Memoization-exclusive time complexity doesn't seem to be 2^m+n, given m and n are the nums of elements in two sequences.
first, finding the longest common subsequence by quick sort would be meaningless if one of the lists/sequences is exhausted, regardless of the remainders within the other. That means, and as stated by the code itself, the code will stop getting rid of character/ element when there's no more comparison to take place, so making "all leaves end at 0, 0" unachievable. (They either stuck in a loop like (1, 0) would generate (1, 0) and (0, 0) or could not be proceeded further.)
So, based on the above, it looks like the tree is not a symmetrical binary and hence 2^x could no be induced from the statement "each element would cause two possible choices to be made". But when we tried that -- 2^(m+n) -- with small numbers, it does approximate what was stated and seemed to be true. Let's say [a, b] & [c, d]. but as the quantity of input gets exponentially larger, I'm no longer convinced that is still correct.
When we're given a fixed yet allocable nums of elements (you can see this as you gambling chips), the max num we could potentially get from them from a multiplication is through the minumum difference between the two numbers. (like how 2x2 > 1x3) So, the worst case where iteration would be at maximum, under the circumstance that total num of elements of both sequences are fixed, would be when seq1 and seq2 have the same number. And now what would be the other extreme case? I'm sure you can tell it's when there is only one element in seq1 and the remainder in seq2. The time complexity of that would be:
(2 x N of the longest sequence)+1
and the leaves would just be N+1.
Now let's get back to the "worst of worst" case. I've tried to construct the binary tree up to (4, 4) root and noticed it does resemble a perfect, symmetrical binary tree but with surplus leaves (the number of leaves after you filled out all the gaps left by a zero-sth pairs to make it a perfect binary). And my conclusion was that the time complexity should be of 2 to the power of the height of tree, instead of simply adding m and n. The increment or trend of the surplus leaves is a multiplication of 4 for every one element added to both sequences: I had 4 leaves at (2, 2), 8 at (3, 3), and 12 at (4, 4), so on and forth. And we know that exponent has a greater growing power than multiplication, so eventually the disparity between the number given by m+n and the surplus leaves would be exponentially greater.
From the sum of geometrical series, if we substitute a with 1 and r with 2, we know that the sum of all the nunber of nodes (including leaves) of a h-layer tree would be approximately 2^h. And for a same-number pair root, the height of the tree (excluding root and surplus leaves) is just 2n-2. On a side note, we can now deduce that if we toggle the number on the scale, let say from a fixed total of 10, the number of nodes would lie somewhere between 19 to ~256. Hence, it would be more intuitive (for me, personally) to say that the time complexity of the quick sort that without memoization would be ~ 2^h, for which h is the number of layers excluding root (or counting from 0 if you wanna do so). But, ultimately, it's just the matter of 2^n+2, so I assumed it doesn't affect much. In the end, worst case of memoization (which simply is m*n) would beat 2^(2n-2).
Thank you so much for coming up with this course
Is this course worth for cracking the tests of big product based companies and solve problems on leetcode ?
@@shishirkatiyar8430 it will clear your basics and will help in problem solving thought process
Simplest solution for the first problem:
Gemini write a function which takes a list of integers and a integer and then if the given integer exist in the given list of integers return its index or else return -1
i was gonna start leetcode and other comp programming stuff , this course is going to be really helpful !
⌨ (00:00:00) Introduction
⌨ (00:01:43) Binary Search Linked Lists and Complexity
⌨ (00:03:43) Introduction
⌨ (00:08:35) Problem
⌨ (00:12:17) The Method
⌨ (00:13:55) Solution
⌨ (00:50:52) Complexity and Big O notation
⌨ (01:24:57) Binary Search vs Linear Search
⌨ (01:31:40) Generic Binary Search
⌨ (01:40:08) Summary and Conclusion
⌨ (01:44:30) Assignment Walkthrough
⌨ (01:45:05) Introduction
⌨ (01:50:01) Problem- Rotated Lists
⌨ (01:53:02) The Method
⌨ (01:54:03) Solution
⌨ (02:30:47) Summary and Conclusion
⌨ (02:33:29) Binary Search Trees Python Tutorial
⌨ (02:34:41) Introduction
⌨ (02:37:36) Problem
⌨ (02:38:40) The Method
⌨ (03:13:58) Binary tree
⌨ (03:27:16) Traversing Binary Tree
⌨ (03:36:10) Binary Search Tree
⌨ (04:22:37) Self-Balancing Binary Trees and AVL Trees
⌨ (04:26:27) Summary and Conclusion
⌨ (04:30:33) Hash Tables and Python Dictionaries
⌨ (04:31:09) Introduction
⌨ (04:34:00) Problem
⌨ (04:40:28) Data List
⌨ (04:42:52) Hash Function
⌨ (04:54:52) Basic Hash Table Implementation
⌨ (05:03:07) Handling Collisions with Linear Probing
⌨ (05:09:24) Summary and Conclusion
⌨ (05:16:47) Sorting Algorithms and Divide & Conquer
⌨ (05:17:48) Introduction
⌨ (05:20:19) Problem
⌨ (05:21:27) The Method
⌨ (06:40:49) Custom Comparison Functions
⌨ (06:48:53) Summary and Conclusion
⌨ (06:54:57) Recursion Memoization & Dynamic Programming
⌨ (06:56:37) Introduction
⌨ (07:00:04) Problem
⌨ (07:04:28) The Method
⌨ (07:06:21) Solution
⌨ (08:06:13) Knapsack Problems
⌨ (08:08:48) The Method
⌨ (08:09:24) Solution
⌨ (08:43:26) Summary and Conclusion
⌨ (08:44:05) Graph Algorithms BFS, DFS & Shortest Paths
⌨ (08:45:02) Introduction
⌨ (08:51:00) Graph Data Structure
⌨ (09:15:57) Graph Algorithms - Breadth-First Search
⌨ (09:37:28) Depth-First Search
⌨ (10:08:26) Shortest Paths
⌨ (10:40:39) Summary and Conclusion
⌨ (10:42:21) Python Interview Questions Tips & Advice
⌨ (10:43:09) Introduction
⌨ (10:44:08) The Method
⌨ (10:47:10) Solution
⌨ (12:30:51) Summary and Conclusion
Just on Time when i needed the most✌️
Why do u guys pretend to act like u really needed this
@@maxwelleaster4124 because we really needed this...!!
@@maxwelleaster4124 cause I'm preparing for my interview was doing hackerrank but needed some structured path. There are many paths I've came cross but mostly were not on python. This one seems better to my liking ✌️
@@maxwelleaster4124 I read an article this morning about it and looked to learn about it, and the video came lol
@@maxwelleaster4124 it is difficult to find a fully compiled python dsa course.
Finally I found this with python thanks so much for your efforts this is literally a treasure ♥️♥️
I am relieved whenever I hear an Indian accent in a programming or coding video. I know it's gonna be very helpful.
That's some strong Indian Accent and I love it
Finally after paying to udemy and buying a bunch of courses, I end up here, with this 12 hour long beautiful Python data structures courses. Too bad I already completed a data structure course. But willing to take this again.
Is it worth buying for you?
did we get free certificate over here
Reading whats written on the screen and some improvising that's it!
This is really very helpful!!😭😭 Thank you so much!❤🙌
have u completed it?
12:09:00 intention and execution (first example) is 5 steps , but intention and exception (later example) is only 4 steps
this is what i needed. lately I have been struggling to find the best step ( algorithm ) for my code. hope I found it ^_*
Спасибо, Алкаш! 🫶
This video is the best resource to learn DSA , especially if u r new to this concept. Love the explanation, clarity in the content. Great video. It demystified all the myths i had about DSA.
bro this is the worst dsa course i have ever seen
@@Shsquad11yes
@@Shsquad11 why ? should i do it or not ?
@@Shsquad11 I am learning many things and most the important rememembering them because of assignments, what is problem?
Very useful and heloful for cracking interviews!! Keep going on ......
checkpoints for myself:
4. 2:33:29
3. 1:45:00
2. 1:14:00
1. 45:00
The first video I watched about DSA and it turned out to be one of the best one.
I have almost completed an hour, planning to watch it for full 12 hours.
how was it? have you completed it?
Sir, it seems that you made a mistake in Dijkstra's algorithm when assessing the shortest path between 2 and 8--I think it should be 2,3,0,8 -- 12 instead of 15. I made it 12 following your pseudocode, so I have no idea about the issue. Anyway, great course!
Just before my job! Thankyou with my life!
One of the best 12 hours that i have spent. Love the full courses !
Ah yes, 12 hours in one hour amarite
roflmao 😂 you don't understand, he's travelling at 0.9965 times the speed of light
@@ismailmatrix1 He is Dr.Strange
def searchRange(self, nums: List[int], target: int) -> List[int]:
low,high=0,len(nums)-1
left,right=-1,-1
while(low
👆👆All thanks for👆👆🔝he helped me achieved my own python 3 programming course certificate and am very glad to have my own certificate thanks so much 🥰
Hey Harishita , Did you completed this entire course ? If yes , is this course worth watching to crack tests of product based companies and practise on leetcode ?
woww, these tutorials are gold. super grateful for people like you (and for all of the amazing content people provide here on RUclips)
I am starting this course Today. Hope I am able to complete it, posting to keep myself accountable.
00:0
Just when I needed it the most
FCC is here ... You guys are really great ☺️
Did you complete the entire course ?
it is a great course to get started with dsa
Using this to prepare for my Netflix interview tomorrow, will update on how it goes 😅
was it benificial let me know!
How was the interview?
@Kau093 Hey, Have you completed the course?
Now I'm to tired but I will try this tutorial starting from tomorrow, 1 hour per day and write results here 😊
Gracias por este curso, siga adelanté con el canal. Gracias
you arre really great ....your work was lot of benefit for our poor people including me also............any way continue ur unfeesable job
Thank you so much for the lesson man. I wish you could hear me screaming that you are checking two different strings "exception" and "execution". Anyway great video!
day 1 : 1:20:18
day 2 1:44:30
day 3 : 2:31:00
day 4: (02:33:29) Binary Search Trees Python Tutorial
Bro does this course includes stacks queue linked lists
what happened did you stop this course?
@@moonlight-td8ed
Yeah, I had to drop that course too. It just didn't really get into the nuances and details and real-world applications of the algorithms and data structures. And the way they had the whole thing pre-written made it super hard to follow along.
If you're totally new to this stuff, I'd recommend starting with the Code Basics channel instead. Their Data Structures and Algorithms in Python playlist (ruclips.net/p/PLeo1K3hjS3uu_n_a__MI_KktGTLYopZ12&si=2nsP-rpd9BbYYH86) is way more beginner-friendly and has great visual explanations.
Once you've got the basics down, check out Greg Hogg (youtube.com/@GregHogg?si=xWF7x8uaske9ADbi) and NeetCodeIO (youtube.com/@NeetCodeIO?si=v7OypMWD0GF61I26) for LeetCode problem walkthroughs and solutions.
Oh, and if you can spare the cash, NeetCode's Beginner's Guide course on their website is supposed to be really good too! Probably worth the investment if you want that structured full course experience.
Some recommendations learning DSA : use a ton of Google, after learning the theory and the mechanics from watching a video or reading from text I would recommend trying to write the code yourself and that don't just dive into the code rather think about the solution in your head or maybe even write it out as to what you are trying to achieve and how you are going to achieve and then you can try if it doesn't work you have now some knowledge as to where it lacks and what is missing so that you can look up the answer.
From personal experience don't be so hard on yourself that you just start beating yourself as to why you can come up with the solution try if yourself if you could solve it good, if not then it's not the end of the world and think of it as a journey right that on and in no time you would be able to implement and solve these problems. But make sure after you lookup the solution make sure to understand personally adding print statements right to describe and seeing how the algorithms change and work really helped me deepen my knowledge of algorithms and try not to memorize the solution rather the patterns so that I you see a similar question your are easily able to understand what the problem wants you to do.
Just my two cents! Let me know if you have any other questions.
Thank You,much needed for python
You are actually a goat, this is so blessed and so detailed. THANK YOU!
Exactly what I needed ❤️
Thank you very very much,you make things to be easy to grasp & understand.You are really one of the best tech channels 🙏
mistake @ 10:34:02 the stortest path from node 2 to node 8 is [ 2, 3, 0, 8] == 12 not 15. @jovian
thanks for the video. I noticed a mistake in 10:34:00, shouldn't the shortest path be 12 instead of 15 (node 2-3-0-8)?
Hi, I just have figured it out after a while
In the function shortest_path, the last line is " if next_node: queue.append(next_node) ", the problem is, when next_node == 0, the condition is False, and it will not append 0 to the queue
The solution to this is you just need to change it to if next_node != None, and it will work !
@@thanhnam7037 This worked, thank you!
Always waited for....Thank you sooo much
I am hopeful that this will be a great learning experience for me.
After seaching for suitable course, this is the best I found. Thank u for an amazing platform !
This English version video is 12 hours and 30 minutes long but the same playlist in Hindi by the same instructor and same course content runs for 11 hours and 11 minutes. So Hindi language is so effective that it needs less words to communicate?
Best Course ever I found till now.
FreeCodeCamp what's the difference between this course and the other 2 hours long one? What would be the reasons for recommending each one?
I want to get into these courses quite seriously and is expecting some advice.
same
Jovian !!! Thank you so much !!!
When i heard that accent, I knew I'm saved
All praise to the Indians saving our lives
@@rayyanamir8560 Amen
How come no one ever wonders why only Indians seem to be taught code?
Wow waiting since so long
Great freecodecamp ❤️
I am new to the python learning world and looking for some good dsa tutorials with problem-solving approaches and guess what, I found his tutorial. this is just super amazing for any beginner. Now I think I can clear my coding interviews with confidence. Thank you so much for this tutorial, wish i could found more of your tutorials on python on youtube. can you give me links on oops in python as well.
This is advanced maybe intermediate. Personally, I wouldn't start python with this but more if statements and basic language but if your picking up and doing it have fun course.
he has a really nice voice,you can hear the indian accent but its clear and realaxing
I'm new to programming algorithms. I used a recursive function to locate the 1st repeating card, does it increase the complexity in any way?
def check1st(card, mid):
if mid-1 >= 0 and card[mid] == card[mid-1]:
return check1st(card, mid-1)
else:
return mid
Thank you!
This video made me fall in love with problem-solving, I think from this day I'm gonna love coding.
How’s it going so far?
@@1PercentDaily what about you how is it going??
@@1PercentDaily need a coding partner let me know if you are interested!
Can anyone say me where does where does this algorithms tutorial Start's ?
awesome teaching sir!
These courses are more important to me than oxygen
ruclips.net/video/iIq-HPzY-Ts/видео.html
⁷r thesedays.. many python courses come out. I like it.
Going to be working through this over time (and I'm doing C# so that'll add maybe some extra challenge transposing everything lol) but thank you! I've been trying to find some better practice/info about how to learn algorithms and coding patterns, and using this (along with leetcode, which I wasn't aware of before) is exactly what I need
nice, I was wondering how to take notes/learn through this lesson, how do you learning this, any particular methodology? i appreciate your reply
Can self learners crack a job at google?
i love the accent, it is hard for me to understand english in native accent but this is better.
Thanks for all the documentation! its such a clear master piece!
1:16:56
Please tell me why do we write a whole new function for the duplicate elements present when simple sort and set functions do the job.
Eg:- [8,6,6,6,4,3,2,1,0]
After sorting
[0,1,2,3,4,6,6,6,8]
Now list(set function) gives
[0,1,2,3,4,6,8]
Now it gives the position as 5.
Can anyone explain ???
Bro spent more time explaining his website than actually explaining the material
My good this is the course I have been waiting for