Introduction to Algorithms ( Playing a Counting Game ) 0:25 - What Is an Algorithm? 6:50 - Guess the Number 12:46 - Defining an Algorithm 21:15 - Evaluating Linear Search 29:58 - Evaluating Binary Search Introduction to Algorithms ( Time Complexity ) 36:11 - Efficiency of an Algorithm 42:39 - Constant and Logarithmic Time 49:11 - Linear & Quadratic Time 53:48 - Quasilinear Time 56:23 - Exponential Time 1:04:23 - Determining Complexity Introduction to Algorithms ( Algorithms in Code ) 1:08:22 - Linear Search in Code 1:18:02 - Binary Search in Code 1:28:06 - Recursive Binary Search Introduction to Algorithms ( Recursion and Space Complexity ) 1:41:14 - Recursive Functions 1:46:18 - Space Complexity 1:53:07 - Recap of Algorithms in Code Introduction to Data Structures ( Exploring Arrays ) 1:57:44 - Introduction 2:00:40 - Array Basics 2:06:20 - Accessing a Value in an Array 2:13:06 - Array Search, Insert and Delete Introduction to Data Structures ( Building a Linked List ) 2:22:57 - What Is a Linked List? 2:36:15 - Adding Nodes to a Linked List 2:44:05 - Implementing Search 2:48:34 - Inserting a Node 2:55:20 - Removing a Node Introduction to Data Structures ( The Merge Sort Algorithm ) 3:03:06 - Merge Sort 3:11:13 - Splitting Into Sublists 3:14:27 - Recursively Merging Sublists 3:21:34 - Ensuring the Correctness of Merge Sort 3:28:17 - Evaluating the Runtime of Merge Sort Introduction to Data Structures ( Sorting a Linked List ) 3:35:40 - The Merge Function 3:40:31 - The Divide Step 3:47:56 - The Conquer Step 4:00:11 - Evaluating the Runtime 4:08:46 - Recap of Introduction to Data Structures Algorithms: Sorting and Searching ( Sorting Algorithms ) 4:11:02 - Sorting and Searching 4:14:56 - Bogosort 4:20:36 - Selection Sort 4:27:11 - Getting the Run Time of a Program 4:31:17 - Recursion 4:41:18 - Quicksort 4:47:12 - Implementing Quicksort 4:52:34 - Merge Sort 4:59:45 - Actual Run Time for Sorting Algorithms 5:02:00 - Big-O Run Times of Sorting Algorithms Algorithms: Sorting and Searching ( Searching Names ) 5:07:42 - Linear Search 5:12:04 - Sorting Names 5:14:04 - Binary Search 5:19:22 - Timing Our Search Scripts 5:20:41 - Big O Runtime of Search Algorithms
The future of clean, clear, coherent precise education starts with videos like this. More success and good wishes to people who make such videos and for free to the general public. This is one genuine and sincere way of serving humanity and educating people. Kudos and thanks for this wonderful video. Much love
I finally found someone that speaks my language . I completely understand every word. I completely understand everything word that your saying without rewinding back multiple times. Your the first that I would consider mentor
I am extremely impressed with the exceptional quality of this course, especially considering its remarkable price point of FREE. As someone who primarily learns through reading and images, I can confidently say that this is one of the best courses I have ever taken. If you are on the fence about enrolling in this course, let me assure you, it is a decision worth making. Don't hesitate any longer, take this course now!
I am not a programmer nor a CS student. I am a personal trainer and physical therapist who happens to like casual coding in C. Pasan, i am starting linked list right now and i can't say how much value you added to my knowledge in two hours and 20 minutes. I already feel like i could re-write most of the programs i wrote in a better way. Thank you so much. I'm looking forward to learn from the rest of the course.
I have never seen in my entire life someone who explains stuff like this omg..this is crystal clear..he is so clear that I have no questions.that is amazing.😱👏🏿👏🏿👏🏿wow
Clearly sounds like you're imposing this on her, because you heard somewhere programmers at Google make bank. You view her as a monetary investment. Poor kid.
Unless I completely misunderstand what this training is for… she is more then able to chose her own path. You assume a lot and it is a reflection upon yourself.
For those who are curious, we round 9/2 = 4.5 to 4.0 at 1:23:20 because python follows the rule of Banker's Rounding (or Gaussian Rounding), which rounds a half to the nearest _even_ whole number. Therefore, 4.5 rounds to 4 as does 3.5.
11//2 = 5, Its more about the // operator diving the numerator by whatever the denominator is then rounding down no matter what, even for something like 11/3 which would bring 3.66 will become 3 when using the floor // operator instead of the regular division
19:46 What is Algorithms 21:42 What make good Algorithms (Correctness and Efficiency) 23:42 34:34 definition of Binary Sarch 39:24 Growth rate 40:09 What is Big O 56:40 58:47 Brute force algorithms
What a course it's been. Learned the basics in a very fun way. When i started, just wanted to take an idea of dsa. But now learning and making notes side by side. Hats off to uh 💯
@@madumerekelechi9667 Definately learn python and understand the fundamentals before moving on to courses like this. A lot of projects I work/worked on I had to come up with my own solutions to and then later on found out about these tools that help in many situations or a combination of them. I suggest you think through a real world problem and compare the logic you have to think through a solution with no helpnand then with help. It makes it very clear how these algorythms were derived.
When I took computer science in a community school it was hell. Teachers were learning how to code 5 minutes before class then would yell at us if we didn’t know sthg. Other teachers were boring so many students gave up. I finished after 3 years totally clueless. This was back in the 1990s where not many of us could afford computers. I have ptsd from that time but like to look at coding as a hobby now that I have more time on my hands. Thank you to these courses.
If anyone like me lost it at the final 3 lines in merge_sort() @4:00:00, make note that 'current' and merge.head point to the same Node object for the first pass of while-loop. When current.next_node is reassigned to a non-None value that first time, merged.head.next_node points to the same value. Hope this helps
Just 12 minutes in and I'm already blown off by the simplistic strategy applied in communicating what is mostly seen as a complex part of programming. Kudos guys! 👍
@@ungurubulan666 truth is you don’t need university to learn any of this anymore. Just the will to find the information and a will to create something innovative.
So I've been going through python videos and this has REALLY HELPED me understand this concept. Algorithmic thinking is pretty fundamental to programming and this has helped me figure everything out so far.
This is so much easier to understand than that Cormen book on Algorithms and Data Structures. I felt depressed after trying to study that... Now I feel happy thanks to this video. 🙏🙏🙏🙏👍👍👍
It's like the books intentionally make it harder for you to understand by giving you cryptic half-assed explanations. Not only that, colleges force you to buy newer editions when there is basically no difference in the content of the books except for the exercises that been changed very little in actual content.
@John Power Thank you so much John for this stupidest reply I've ever got. You're "literally" the dumbest person in this comment section (pun intended) 🤣
@@danielmbcn I think people like you and @John don't have your own houses in order so you come to social media apps, trying to find mistakes that have nothing to do with reality so that you can feel like a champion for 5 seconds.
@John Power there is a common defense among lawyers that argues saying "when you say 'literally', what you actually mean is a hyperbole of your sentence, other than actual 'literal'." This works on the concept that language is dynamic, meaning, word definitions changes depending on differrnt factors (study language if you want to know more, you sound like a guy who loves to learn. Dare yourself, literally). In this case, there is a clear message about Usama's comment. That is, the freeCodeCamp is a life-saver. There is no need to argue that what he means is something life-threatening since it is already given that his words are hyperbole. Also, your reply works on assumption that the only accepted definition of "literal" is the definition given by the dictionary. However, this is not the case, you are not writing a research paper or defending a case in a court, or any other instance that would require the usage of formal definitions. And even so, like what I have mentioned, when people say "literal" or "literally", in cases where there is little to no chance of ambiguity, what the person actually means is a hyperbole.
Thank you so much for this amazing tutorial! I’ve been struggling with algorithms and data structures for a while now, but your explanations and examples made everything so much clearer. I really appreciate the time and effort you put into creating this course. Keep up the great work!
Thank you. You're awesome. I'm a new junior frontend developer and I just started learning DSA. It's really helpful. Hoping to finish this video next year.
Do you need to know python in order to undertand and follow along? I too am a front end dev and wanting to learn DSA but the only languages I know are html css and JavaScript
@@syntax2922 It does help to know python. I know python already that's why I can understand the code. I'm sure there's a DSA with javascript on youtube. But still try to watch this and see if you can understand it
I like the sound effects and the fact that the instructor states often that he does not really know a given topic so that I am not upset with my learning capacity limitations. lol
You do algortihm all the time yourself. If you go to do grosseries , you don't buy 1 item go back to your house open the door place the item and go back in your car or walk to the grosserie store and buy the next item and repeat this until you have everything you need. You start with what you need , you ensure your balance is sufficient , then you make the appriotiate time to do the shopping and then take everything you need. The nature has already implemented this algorithm within you.
Extremely relatable right off the bat. Almost every position that's given me a chance with a coding test has been algorithm related and despite having a degree, I had such a sinking feeling of imposter syndrome.
just finished this and so many things make much more sense now! also, Pasan is an excellent instructor. loved the brief intro to concept, demo and then recap of concept before moving on. thank you!
Great course. At 2:46:00 Inside the search function, the "else" can be removed as you have a return in the if statement. Same functionality, less code and clean code :) Appreciate the effort behind the course and sharing it for free !
I have used this tutorial over 10 times and it is great. I cant appreciate enough. I noticed something in the merge sort algorithm though, the verify() function will return false if the unsorted list has duplicates. This is as a result of "return list[0] < list[1] and verify_sorted(list[1:])" . I think it should be "return list[0]
33:15 correcting you, if the target is 5 and the mid-value(13) is too high then she will discard everything more than the mid-value(13), which means the right side of sorted array. (correct me, if I am wrong)
Oh, I can see the ads now... *Professors hate him, find out why* 🏆❤️🎊🙏🏽 This is EASILY the best intro to CS I've ever come across. Like, the lecturer peaked. This was glorious.
This video was EXACTLY what I needed for my upcoming AWS interview. Thanks a million! You really provided top notch education for free, and I salute you #freetheknowledge
👆👆👆👆👆👆👆Get the best practical training from this Hacker/programmer. Very affordable course with alot of tools at your disposal. Free hacking softwares and plugins.
2 hours in. THANK YOU!! I was trying to do leet code problems without this fundamental knowledge and it was a nightmare and everything already makes so much more sense
After taking this course, were you able to easily solve leet code questions? Easy to medium ones at least if not the hard once? If you can, please elaborate more. I'm so confused right now and would really appreciate your help
This curse is an actual masterpiece!! I watched the full video till the end and i'm just so thankful. Wonderful professors, keep up the good work. Cheers from the Dominican Republic 🇩🇴
Anyone distracted by that interesting looking staircase in the background, as the video starts😅 (if that’s what it is? 🤷🏾♂️). All jokes aside - excellent, excellent video!
I enjoyed this course and loved the way Pasan explained all the concepts. P.S. - verify_sorted function in Merge Sort should have this condition list[0]
Oh my, I can't keep up with all the videos lol!! Thanks for all the great work you guys have been doing, it means the world for people like me who don't have access nor the means to proper education where I live.
2:57 what is algorithm? sudh gyan 6:51 some concepts before diving into the algorithms 12:47 14:57 linear search algorithm 50:56 quadratic time 1:01:30 traveling salesman 1:08:24 linear search algorithm with coding in python 1:18:04 binary search algorithm with coding in python 1:28:07 recursive binay search 1:41:18 recursive and space complexity 1:57:50 introduction to data structures 2:00:42 Array 2:23:01 linked list 3:03:51 merge sort
Thank you and I am learning a lot in this video. I'm sure that someone pointed this out already but at 2:52:55, on his line 80 the "current = node.next_node" line in the while loop came up as an error since "node" was not defined. I changed that line to "current = current.next_node" and the function works now.
Huge THANK YOU to FCC for making such high quality content available to everyone for free! As a professional Software Engineer, I get immense value from these vids!
I’m so grateful to find this, this course is actually giving me tough time in school, but with this video an area of the course is been covered! But we’re dealing with the mathematical view of algorithm time complexity. Any one with idea where I can go check that out?
I haven't watch this but I want to appreciate the English with minimum accent here. No disrespect for tutors with thick accents, but with 1.5x - 2x speed it is much easier to hear clearer English.
The content is free, its the structure, guidance, and validation you usually pay for, among other things. You need to find the content, structure it, guide yourself through it, then find a way to validate you actually learn something. Sometimes you can get an education with variable degrees of content, structure, guidance, and validation, but they are usually there in some form or another. However, this comparison completely ignores higher level education (Masters, Doctorates), where you usually push the boundaries of knowledge through your own research.
@@TheSKooler Why? Free courses on TH-cam still allow the creators to make money through ad revenue. Everybody wins. And if more people get access to quality education then more people can start business and make more money.
Excellent coverage and explanation. Great learning material. Just wanted to mention that the implementation of recursive binary search code around 1:30:00 hr mark could be super slow. The midpoint splitting of large array is a very expensive operation. This can be avoided by not splitting the array, instead passing the original array along with the calculated min and max indices.
In the video we learn that in functional languages we try to avoid changing data that was given to a function (1:44:56) such as "min" and "max". We also learn that functional languages prefer a recursive method. I don't know how "expensive" slicing is in python however your solution completely ignores functional languages and in terms of python itself, it is preferred to use an iterative binary algorithm, which follows the exact method you described. Overall we know recursive binary algorithms are less efficient due to them using logarithmic space or O(log n) / O(ln n). However in the case of functional languages, which how I understand it was the reason for teaching us about recursive binary algorithms, this less efficient method is preferred.
I REALLY need tutorials like this. My biggest weakness is algorithmic thinking, it's not the technical aspects of getting the code running at all. It's the calculations to power the code in a way that's useful.
Introduction to Algorithms
( Playing a Counting Game )
0:25 - What Is an Algorithm?
6:50 - Guess the Number
12:46 - Defining an Algorithm
21:15 - Evaluating Linear Search
29:58 - Evaluating Binary Search
Introduction to Algorithms
( Time Complexity )
36:11 - Efficiency of an Algorithm
42:39 - Constant and Logarithmic Time
49:11 - Linear & Quadratic Time
53:48 - Quasilinear Time
56:23 - Exponential Time
1:04:23 - Determining Complexity
Introduction to Algorithms
( Algorithms in Code )
1:08:22 - Linear Search in Code
1:18:02 - Binary Search in Code
1:28:06 - Recursive Binary Search
Introduction to Algorithms
( Recursion and Space Complexity )
1:41:14 - Recursive Functions
1:46:18 - Space Complexity
1:53:07 - Recap of Algorithms in Code
Introduction to Data Structures
( Exploring Arrays )
1:57:44 - Introduction
2:00:40 - Array Basics
2:06:20 - Accessing a Value in an Array
2:13:06 - Array Search, Insert and Delete
Introduction to Data Structures
( Building a Linked List )
2:22:57 - What Is a Linked List?
2:36:15 - Adding Nodes to a Linked List
2:44:05 - Implementing Search
2:48:34 - Inserting a Node
2:55:20 - Removing a Node
Introduction to Data Structures
( The Merge Sort Algorithm )
3:03:06 - Merge Sort
3:11:13 - Splitting Into Sublists
3:14:27 - Recursively Merging Sublists
3:21:34 - Ensuring the Correctness of Merge Sort
3:28:17 - Evaluating the Runtime of Merge Sort
Introduction to Data Structures
( Sorting a Linked List )
3:35:40 - The Merge Function
3:40:31 - The Divide Step
3:47:56 - The Conquer Step
4:00:11 - Evaluating the Runtime
4:08:46 - Recap of Introduction to Data Structures
Algorithms: Sorting and Searching
( Sorting Algorithms )
4:11:02 - Sorting and Searching
4:14:56 - Bogosort
4:20:36 - Selection Sort
4:27:11 - Getting the Run Time of a Program
4:31:17 - Recursion
4:41:18 - Quicksort
4:47:12 - Implementing Quicksort
4:52:34 - Merge Sort
4:59:45 - Actual Run Time for Sorting Algorithms
5:02:00 - Big-O Run Times of Sorting Algorithms
Algorithms: Sorting and Searching
( Searching Names )
5:07:42 - Linear Search
5:12:04 - Sorting Names
5:14:04 - Binary Search
5:19:22 - Timing Our Search Scripts
5:20:41 - Big O Runtime of Search Algorithms
Thank you!
Thankyou
Thankyou very much :)
Thank you
Thanks bro
This is why good professor matter. I don't even know how to code yet, but the course is so interesting, I watched 46 min without even realized it.
Wuw
Insane thing
code are only means of implementing good algorithm that results in good product
So, have you completed the course now. It's been 4 months.
No I haven't
The future of clean, clear, coherent precise education starts with videos like this. More success and good wishes to people who make such videos and for free to the general public. This is one genuine and sincere way of serving humanity and educating people. Kudos and thanks for this wonderful video. Much love
true
heinn ji ?
@@shivanshsehgal1674 lol
Exactly. God bless all those good people.
@@shivani9840 i am working on it i am from india and i know you are from India as well ☺
I finally found someone that speaks my language . I completely understand every word. I completely understand everything word that your saying without rewinding back multiple times. Your the first that I would consider mentor
I am extremely impressed with the exceptional quality of this course, especially considering its remarkable price point of FREE. As someone who primarily learns through reading and images, I can confidently say that this is one of the best courses I have ever taken. If you are on the fence about enrolling in this course, let me assure you, it is a decision worth making. Don't hesitate any longer, take this course now!
Which programming language is used ?
@@KaranJolly Python
I am not a programmer nor a CS student. I am a personal trainer and physical therapist who happens to like casual coding in C. Pasan, i am starting linked list right now and i can't say how much value you added to my knowledge in two hours and 20 minutes. I already feel like i could re-write most of the programs i wrote in a better way. Thank you so much. I'm looking forward to learn from the rest of the course.
000000😊
I have never seen in my entire life someone who explains stuff like this omg..this is crystal clear..he is so clear that I have no questions.that is amazing.😱👏🏿👏🏿👏🏿wow
My daughter has begun her coding journey and will be soaking this up really soon. Thank you for providing such excellent free education.
wow!
wow!
@@adhammohamed3410 lol
Clearly sounds like you're imposing this on her, because you heard somewhere programmers at Google make bank. You view her as a monetary investment. Poor kid.
Unless I completely misunderstand what this training is for… she is more then able to chose her own path. You assume a lot and it is a reflection upon yourself.
I encountered a similar comment on another FreeCodeCamp course focused on data structures and algorithms.
For those who are curious, we round 9/2 = 4.5 to 4.0 at 1:23:20 because python follows the rule of Banker's Rounding (or Gaussian Rounding), which rounds a half to the nearest _even_ whole number. Therefore, 4.5 rounds to 4 as does 3.5.
Thank you. I was a little confused because we learned it that you only round down from 0-4.
greatest integer function
What about 0.5? Wouldn't it be better to always round to the nearest odd number and cover this specific case as well?
oh i just thought two ints cant divide into a double so it has to be 4 but it is a double pointed float so youre right.
11//2 = 5, Its more about the // operator diving the numerator by whatever the denominator is then rounding down no matter what, even for something like 11/3 which would bring 3.66 will become 3 when using the floor // operator instead of the regular division
literally the best Algorithms and Data Structures course that has ever made.
no
Why?
is it beginner friendly? Like I wanted to start DSA, should i start with this video?
@@vanshikabansal8891 yes you should , its easy if you know how to write simple lines of code and if you do not .
@@vanshikabansal8891 yes
These lessons are high quality, clear, & concise. Everyone hit the tip jar if you can. Good job.
personal time:
day 1) 00:00 - 36:33
day 2) 36:33 - 1:04:22
day 3) 1:04:22 - 1:57:50
day 4) 1:57:50 - 3:03:07
day 5) 3:03:07 - 3:28:19
day 6) 3:28:19 - 4:11:11
day 7) 4:11:11 - 5:22:07
i finish!!!! yey
19:46 What is Algorithms
21:42 What make good Algorithms (Correctness and Efficiency) 23:42
34:34 definition of Binary Sarch
39:24 Growth rate
40:09 What is Big O
56:40
58:47 Brute force algorithms
holy cow . i’ve been searching for an all in one dsa course other than MIT’s. THANK YOU
There is another one of 8 hrs
See the 8 house course of FCC + 6 hour graph course + still there are lot of Algos there.
Is MIT good
same hahaha
@@subhrangshuchakraborty7188 which one is better and more in depth? This one or the 8 hour long one?
What a course it's been. Learned the basics in a very fun way. When i started, just wanted to take an idea of dsa. But now learning and making notes side by side. Hats off to uh 💯
I can't believe we are getting these stuff for free on TH-cam. Thank you තව ලංකාවේ කොල්ලෙක්. ගැම්මක් තමයි.
these stuff were back then impossible to study if you didn't go through College, but now one youtube search query does all the magic
@@user-in2jf7tx1qpower of technology
I've completed the fundamentals in python and I was planning on learning DS and algos...this made my day
Likewise
Which would you recommend that I learn first.Data structure or python?
@@madumerekelechi9667 python
true
@@madumerekelechi9667 Definately learn python and understand the fundamentals before moving on to courses like this. A lot of projects I work/worked on I had to come up with my own solutions to and then later on found out about these tools that help in many situations or a combination of them. I suggest you think through a real world problem and compare the logic you have to think through a solution with no helpnand then with help. It makes it very clear how these algorythms were derived.
When I took computer science in a community school it was hell. Teachers were learning how to code 5 minutes before class then would yell at us if we didn’t know sthg. Other teachers were boring so many students gave up. I finished after 3 years totally clueless. This was back in the 1990s where not many of us could afford computers. I have ptsd from that time but like to look at coding as a hobby now that I have more time on my hands. Thank you to these courses.
If anyone like me lost it at the final 3 lines in merge_sort() @4:00:00, make note that 'current' and merge.head point to the same Node object for the first pass of while-loop. When current.next_node is reassigned to a non-None value that first time, merged.head.next_node points to the same value. Hope this helps
This is one of the best DSA course for beginners.
Dsa?
@@GSUS-fc6ss Data Structures and Algorithms
In what language he explained..java or c?
Just 12 minutes in and I'm already blown off by the simplistic strategy applied in communicating what is mostly seen as a complex part of programming.
Kudos guys! 👍
one entire semester in 5 hours.....
. . .for free 😂
2.5 hrs *. ;)
yo what? this is 1.5 courses at my university
@@ungurubulan666 truth is you don’t need university to learn any of this anymore. Just the will to find the information and a will to create something innovative.
@@w.a.r4623 unfortunately I cannot find intern position even If I have degree 😢😊
So I've been going through python videos and this has REALLY HELPED me understand this concept. Algorithmic thinking is pretty fundamental to programming and this has helped me figure everything out so far.
@@rahel7443 how do you get on?
?
Cs50 good starting point
@@alhamudillah4513 that's an amazing starting point, CS50 is good stuff.
I don't remember paying for TH-cam Premium. This is the best Data Structure and Algorithm tutorial on the internet
You guys are doing great work, giving free education to us!
I understand that thinking in algorithms makes coding much more approachable. You guys did a great job
My 8-year-old brother's watching along excitedly - this is great!
This is so much easier to understand than that Cormen book on Algorithms and Data Structures. I felt depressed after trying to study that... Now I feel happy thanks to this video. 🙏🙏🙏🙏👍👍👍
It's like the books intentionally make it harder for you to understand by giving you cryptic half-assed explanations. Not only that, colleges force you to buy newer editions when there is basically no difference in the content of the books except for the exercises that been changed very little in actual content.
I agree 👍
i just started trying to self teach myself into a junior programmer and this is so great for starting, thank you
You're just such an amazing tutor! Can't thank you enough for providing this content for free!
Linear Search and Binary Search in a very simple way..... ....
th-cam.com/video/dK8ygtCGwNE/w-d-xo.html
thearshblog.blogspot.com/2022/09/beating-youtube-algorithm.html
At 2:53:00 in the Linked List
The code at position 80 should be
current=current.next_node
Thanks, man.
I was confused. Thank you for correcting it.
I was stuck on this for so long! Thank you!!!
Watching this is 2024 and the quality and value of this video is 1000%, I am not even bored one bit.
is it beginner friendly? Like I wanted to start DSA, should i start with this video?
@@vanshikabansal8891 yep
You're literally saving my life guys.
Thank you so so much.
@John Power Thank you so much John for this stupidest reply I've ever got. You're "literally" the dumbest person in this comment section (pun intended) 🤣
@@danielmbcn I think people like you and @John don't have your own houses in order so you come to social media apps, trying to find mistakes that have nothing to do with reality so that you can feel like a champion for 5 seconds.
@@danielmbcn You guys take yourselves too seriously. This video has helped him among many other people.
@@danielmbcn You guys are hounding him because of how he worded his comment - the intent is pretty clear. Get a grip honestly...
@John Power there is a common defense among lawyers that argues saying "when you say 'literally', what you actually mean is a hyperbole of your sentence, other than actual 'literal'."
This works on the concept that language is dynamic, meaning, word definitions changes depending on differrnt factors (study language if you want to know more, you sound like a guy who loves to learn. Dare yourself, literally). In this case, there is a clear message about Usama's comment. That is, the freeCodeCamp is a life-saver. There is no need to argue that what he means is something life-threatening since it is already given that his words are hyperbole.
Also, your reply works on assumption that the only accepted definition of "literal" is the definition given by the dictionary. However, this is not the case, you are not writing a research paper or defending a case in a court, or any other instance that would require the usage of formal definitions. And even so, like what I have mentioned, when people say "literal" or "literally", in cases where there is little to no chance of ambiguity, what the person actually means is a hyperbole.
Worts Case Scenario - 25:21
Brute Force - 57:44
Password - 59:37
Linear Search - 1:09:50
Binary Search - 1:18:10
Binary Search2 - 1:27:58
Recursion - 1:41:17
Thank you so much for this amazing tutorial!
I’ve been struggling with algorithms and data structures for a while now, but your explanations and examples made everything so much clearer.
I really appreciate the time and effort you put into creating this course.
Keep up the great work!
Dear friend. Visit youtube chanal #solvemyprogrammingtask. Thank you.
Thank you. You're awesome. I'm a new junior frontend developer and I just started learning DSA. It's really helpful. Hoping to finish this video next year.
Started today-Jan 1, 2022, and ended today. It's the best course I've ever watched 😌
Do you need to know python in order to undertand and follow along? I too am a front end dev and wanting to learn DSA but the only languages I know are html css and JavaScript
@@syntax2922 It does help to know python. I know python already that's why I can understand the code. I'm sure there's a DSA with javascript on youtube. But still try to watch this and see if you can understand it
@@syntax2922 I think javascript and python are quite same
Holy moly I'm having this course this semester. Coincidence I think not 😆
It's your destiny to succeed
This is such an amazing video!! So much value, I wish most courses had this same amount of quality! Thank you for this!!!
Not even the courses you have to pay for have this quality.
I like the sound effects and the fact that the instructor states often that he does not really know a given topic so that I am not upset with my learning capacity limitations. lol
No coding experience but this course makes me understand algorithm well. Thank you.
You do algortihm all the time yourself. If you go to do grosseries , you don't buy 1 item go back to your house open the door place the item and go back in your car or walk to the grosserie store and buy the next item and repeat this until you have everything you need. You start with what you need , you ensure your balance is sufficient , then you make the appriotiate time to do the shopping and then take everything you need. The nature has already implemented this algorithm within you.
Extremely relatable right off the bat. Almost every position that's given me a chance with a coding test has been algorithm related and despite having a degree, I had such a sinking feeling of imposter syndrome.
just finished this and so many things make much more sense now! also, Pasan is an excellent instructor. loved the brief intro to concept, demo and then recap of concept before moving on. thank you!
How are you doing? :)
Great course. At 2:46:00 Inside the search function, the "else" can be removed as you have a return in the if statement. Same functionality, less code and clean code :) Appreciate the effort behind the course and sharing it for free !
Yes
@Bogdan see you at A1A Car Wash
@@walterwhite7986 ?
@@bogdandumitrescu8987 have you seen breaking bad TV show ?
@@walterwhite7986 Ha ! Now I get it :) See you there ;)
Finally Algorithms and Data Structures in Python from two reputable sources. I really appreciate your efforts!
What's the other source?
@@Piku0055 watch the video nah so you will know the sources
I have used this tutorial over 10 times and it is great. I cant appreciate enough. I noticed something in the merge sort algorithm though, the verify() function will return false if the unsorted list has duplicates. This is as a result of "return list[0] < list[1] and verify_sorted(list[1:])" . I think it should be "return list[0]
i know very little about computer programming, but an hour and 26 mins in it has been so easy to follow and understand!
A few mins into the presentation, already knew it was going to be gold. Well done!
Day 1. 31.07.22: 36:10
Day 2. 1.08.22: 49:10
Day 3. 2.08.22: 1:18:00
Day 4: 3.08.22: 1:28:00
Day 5: 12.08.22: 1:41:00
Day 6: 4.09.22: 1:46:12
what about now why quit?
Hey Have You completed an Whole Course
33:15 correcting you, if the target is 5 and the mid-value(13) is too high then she will discard everything more than the mid-value(13), which means the right side of sorted array.
(correct me, if I am wrong)
U are right, this kept confusing me, but I figured out it’s probably an oversight from his end.
Oh, I can see the ads now... *Professors hate him, find out why* 🏆❤️🎊🙏🏽 This is EASILY the best intro to CS I've ever come across. Like, the lecturer peaked. This was glorious.
This video was EXACTLY what I needed for my upcoming AWS interview. Thanks a million! You really provided top notch education for free, and I salute you #freetheknowledge
👆👆👆👆👆👆👆Get the best practical training from this Hacker/programmer.
Very affordable course with alot of tools at your disposal.
Free hacking softwares and plugins.
I hope you aced your interview. I am also preparing for some interviews 🙂
I'm so glad that I got hired and DSA are now a figment of my imagination.
Only until you need to apply for another job
2 hours in. THANK YOU!! I was trying to do leet code problems without this fundamental knowledge and it was a nightmare and everything already makes so much more sense
After taking this course, were you able to easily solve leet code questions? Easy to medium ones at least if not the hard once? If you can, please elaborate more. I'm so confused right now and would really appreciate your help
Underrated video. Knowing only the language is not enough.
5:22:08 Congratulations for completing this course. You are the real MVP
I was really hoping he said this at the end of the course. Was actually waiting to hear those words only to hear, Thanks for watching!
This curse is an actual masterpiece!! I watched the full video till the end and i'm just so thankful. Wonderful professors, keep up the good work. Cheers from the Dominican Republic 🇩🇴
It's "Course". "Curse" means "maldición ".
@@dietrevich lol 😂 I laughed my ass off about this "extraordinarily good" curse..
This is some high quality content there, and that too for free. I'm beyond grateful. Thanks guys.
Extremely simplified explanation... very easy to follow along and understand every single word..... Thank you very much for this!
Anyone distracted by that interesting looking staircase in the background, as the video starts😅 (if that’s what it is? 🤷🏾♂️). All jokes aside - excellent, excellent video!
Your way of teaching is awesome, this is one of the best course I ever took :)
48:33 O(ln n) is wrong for binary search. For that to be true, you would have to divide the array in e parts in each guess.
I am 5 minutes in and I can already tell that this is an excellent video. Thank you so much for making this. Wish me luck.
He is great at articulating his points. Thanks for being clear and concise.
thearshblog.blogspot.com/2022/09/beating-youtube-algorithm.html how to beat TH-cam Algorithm 👆
Great content! Thanks.
Please, add automatic captions for those who are not native English speakers. I want to check some words.
best algorithms course i have ever seen , understood big O instantly .
Best algorithms course I have seen so far. And it is free!
"Between you and me, the answer is 3"
John :👁️👄👁️
Ahh, the course that made me switch majors. I won't mind giving it another go lol.
😂😂😂😂
I failed three times in my Data Structures exam and then I finally copied and passed coz when I actually studied for it, I failed 🤣🤣🤣
@@charlespanickerabraham same brro its my 3rd time giving same exam
@@charlespanickerabraham why did you fail so much?? I am just curious to ask..
@@Andrew-ez9ft For one, it is boring as hell and also it's really hard to understand
For the first time I have spent a full hour watching a tutorial on TH-cam without any breaks. Wonderful instructor. Thank you.
One of the best channel on youtube.
Thanks for ur efforts.
I really appreciate your pedagogy sir !!
One and only Useful youtube channel. Hats off 👍👍👍
OMG first time in my life watch a TH-cam video for one hour and not feeling sleepy or tired, dude you are god.
People with a great amount of experience and knowledge on specific career backgrounds should make videos like these to educate others ✊🏼✊🏼✊🏼
I really like this guy teaching style, he is also very articulate, I understand every word perfectly. This made me look up more material from him.
Love Treehouse!! This is so awesome to see. I took some of their FSJS content and loved it. Highly recommend!
I enjoyed this course and loved the way Pasan explained all the concepts.
P.S. - verify_sorted function in Merge Sort should have this condition list[0]
Pasan? Prasanth.
@@CountingStars333 Pasan Premaratne
Yes. you're right at this point. I have figured it out during the implementation of the code
The book analogy for recursive functions is so clear, thanks!
I would like to say this class and instructor are amazing. This could easy be a class you would pay 1500 for at a University.
1500usd? i'd be able to eat for like a year with that in my country
basically i could not afford that as of right now
Oh my, I can't keep up with all the videos lol!! Thanks for all the great work you guys have been doing, it means the world for people like me who don't have access nor the means to proper education where I live.
Awesome and knowledgeable content is here
Thanks to FCC contributors
Best DSA course ever! Thank you so much
Really appreciate your content. Love it. I wish Colleges or Universities need instructors like you who boast the student's career 4x times faster.
2:57 what is algorithm? sudh gyan
6:51 some concepts before diving into the algorithms
12:47
14:57 linear search algorithm
50:56 quadratic time
1:01:30 traveling salesman
1:08:24 linear search algorithm with coding in python
1:18:04 binary search algorithm with coding in python
1:28:07 recursive binay search
1:41:18 recursive and space complexity
1:57:50 introduction to data structures
2:00:42 Array
2:23:01 linked list
3:03:51 merge sort
Thank you and I am learning a lot in this video. I'm sure that someone pointed this out already but at 2:52:55, on his line 80 the "current = node.next_node" line in the while loop came up as an error since "node" was not defined. I changed that line to "current = current.next_node" and the function works now.
Thanks a lot bro, cuz i feel something wrong when wrote node.next_node instead of current.next_node
that's awesome I liked the way he explained everything I know algorithms but I needed to refresh my memory thanks
The best channel for beginners.
Really great teaching.
Save money.
I love this course! Brilliant and an instructor I can understand.
and the best part is they explained the concepts usin python 👍
this is an incredible quality video all for free. I would 100% pay money for this. thank you.
Huge THANK YOU to FCC for making such high quality content available to everyone for free! As a professional Software Engineer, I get immense value from these vids!
Thank You for your free course.👍👍
Do you have any plans to upload full university level long course on "Theoretical computer science" ?
I’m so grateful to find this, this course is actually giving me tough time in school, but with this video an area of the course is been covered! But we’re dealing with the mathematical view of algorithm time complexity. Any one with idea where I can go check that out?
Linear Search and Binary Search in a very simple way..... ....
th-cam.com/video/dK8ygtCGwNE/w-d-xo.html
thearshblog.blogspot.com/2022/09/beating-youtube-algorithm.html
how to beat TH-cam Algorithm 👆
I haven't watch this but I want to appreciate the English with minimum accent here. No disrespect for tutors with thick accents, but with 1.5x - 2x speed it is much easier to hear clearer English.
Haha I mean why even say this?
Education is free these days ,
Its just that the fact is not being told to students.
If that happens loads of business will halt dude
@@TheSKooler yeah sure, exactly the reason why google, microsoft, I.e offers official courses for FREE
The content is free, its the structure, guidance, and validation you usually pay for, among other things.
You need to find the content, structure it, guide yourself through it, then find a way to validate you actually learn something. Sometimes you can get an education with variable degrees of content, structure, guidance, and validation, but they are usually there in some form or another.
However, this comparison completely ignores higher level education (Masters, Doctorates), where you usually push the boundaries of knowledge through your own research.
You are very right
I always say this
@@TheSKooler Why? Free courses on TH-cam still allow the creators to make money through ad revenue. Everybody wins. And if more people get access to quality education then more people can start business and make more money.
Excellent coverage and explanation. Great learning material. Just wanted to mention that the implementation of recursive binary search code around 1:30:00 hr mark could be super slow. The midpoint splitting of large array is a very expensive operation. This can be avoided by not splitting the array, instead passing the original array along with the calculated min and max indices.
In the video we learn that in functional languages we try to avoid changing data that was given to a function (1:44:56) such as "min" and "max". We also learn that functional languages prefer a recursive method. I don't know how "expensive" slicing is in python however your solution completely ignores functional languages and in terms of python itself, it is preferred to use an iterative binary algorithm, which follows the exact method you described. Overall we know recursive binary algorithms are less efficient due to them using logarithmic space or O(log n) / O(ln n). However in the case of functional languages, which how I understand it was the reason for teaching us about recursive binary algorithms, this less efficient method is preferred.
WOW!! Prasan is quite crystal clear in his explanation. Hatsoff Man..
I REALLY need tutorials like this. My biggest weakness is algorithmic thinking, it's not the technical aspects of getting the code running at all. It's the calculations to power the code in a way that's useful.
Pasan Premaratne Proud Sri Lankan