Algorithms and Data Structures Tutorial - Full Course for Beginners

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ส.ค. 2024

ความคิดเห็น • 1.8K

  • @Arthur_Kizito
    @Arthur_Kizito 3 ปีที่แล้ว +7658

    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

  • @Pete-da-peter
    @Pete-da-peter 3 ปีที่แล้ว +2684

    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.

    • @Forever._.curious..
      @Forever._.curious.. 3 ปีที่แล้ว +11

      Wuw

    • @suryatej839
      @suryatej839 3 ปีที่แล้ว +16

      Insane thing

    • @rickvian
      @rickvian 3 ปีที่แล้ว +40

      code are only means of implementing good algorithm that results in good product

    • @mayankrathore8721
      @mayankrathore8721 3 ปีที่แล้ว +36

      So, have you completed the course now. It's been 4 months.

    • @ShinroNakamura
      @ShinroNakamura 3 ปีที่แล้ว +4

      No I haven't

  • @shantanuraj7086
    @shantanuraj7086 2 ปีที่แล้ว +1549

    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

    • @adhammohamed3410
      @adhammohamed3410 2 ปีที่แล้ว +4

      true

    • @shivanshsehgal1674
      @shivanshsehgal1674 2 ปีที่แล้ว +1

      heinn ji ?

    • @vishalplayzz2580
      @vishalplayzz2580 2 ปีที่แล้ว +8

      @@shivanshsehgal1674 lol

    • @freeeagle6074
      @freeeagle6074 2 ปีที่แล้ว +8

      Exactly. God bless all those good people.

    • @flutterdeveloper
      @flutterdeveloper 2 ปีที่แล้ว +3

      @@shivani9840 i am working on it i am from india and i know you are from India as well ☺

  • @kingrush6559
    @kingrush6559 2 ปีที่แล้ว +10

    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

  • @charly7842
    @charly7842 ปีที่แล้ว +109

    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!

    • @KaranJolly
      @KaranJolly ปีที่แล้ว

      Which programming language is used ?

    • @bigblueboar
      @bigblueboar ปีที่แล้ว

      @@KaranJolly Python

  • @Emanuele-mw8hc
    @Emanuele-mw8hc ปีที่แล้ว +125

    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.

    • @yazan474
      @yazan474 3 หลายเดือนก่อน

      000000😊

  • @pkasdovi
    @pkasdovi 3 ปีที่แล้ว +47

    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

  • @MalissaLea
    @MalissaLea 2 ปีที่แล้ว +241

    My daughter has begun her coding journey and will be soaking this up really soon. Thank you for providing such excellent free education.

    • @adhammohamed3410
      @adhammohamed3410 2 ปีที่แล้ว +1

      wow!
      wow!

    • @Jasturtle
      @Jasturtle 2 ปีที่แล้ว +7

      @@adhammohamed3410 lol

    • @djt6fan
      @djt6fan ปีที่แล้ว +1

      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.

    • @MalissaLea
      @MalissaLea ปีที่แล้ว +26

      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.

    • @shanuv000
      @shanuv000 5 หลายเดือนก่อน

      I encountered a similar comment on another FreeCodeCamp course focused on data structures and algorithms.

  • @sirbalafort2620
    @sirbalafort2620 3 ปีที่แล้ว +241

    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.

    • @ThriveUp1
      @ThriveUp1 ปีที่แล้ว +7

      Thank you. I was a little confused because we learned it that you only round down from 0-4.

    • @aniketrajsingh6232
      @aniketrajsingh6232 ปีที่แล้ว +2

      greatest integer function

    • @Michael-jq1hl
      @Michael-jq1hl ปีที่แล้ว +5

      What about 0.5? Wouldn't it be better to always round to the nearest odd number and cover this specific case as well?

    • @pranavi1949
      @pranavi1949 ปีที่แล้ว

      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.

    • @Miggy97
      @Miggy97 ปีที่แล้ว +8

      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

  • @coxixx
    @coxixx 3 ปีที่แล้ว +108

    literally the best Algorithms and Data Structures course that has ever made.

    • @niki8303
      @niki8303 4 หลายเดือนก่อน

      no

    • @coxixx
      @coxixx 4 หลายเดือนก่อน

      Why?

    • @vanshikabansal8891
      @vanshikabansal8891 2 หลายเดือนก่อน +2

      is it beginner friendly? Like I wanted to start DSA, should i start with this video?

    • @cruyffsworld9731
      @cruyffsworld9731 2 หลายเดือนก่อน

      @@vanshikabansal8891 yes you should , its easy if you know how to write simple lines of code and if you do not .

    • @cruyffsworld9731
      @cruyffsworld9731 2 หลายเดือนก่อน

      @@vanshikabansal8891 yes

  • @amaniadore3602
    @amaniadore3602 2 ปีที่แล้ว +162

    These lessons are high quality, clear, & concise. Everyone hit the tip jar if you can. Good job.

  • @Augustwiisk
    @Augustwiisk 2 หลายเดือนก่อน +14

    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

  • @bazileus123
    @bazileus123 ปีที่แล้ว +29

    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

  • @sleexox
    @sleexox 3 ปีที่แล้ว +192

    holy cow . i’ve been searching for an all in one dsa course other than MIT’s. THANK YOU

    • @subhrangshuchakraborty7188
      @subhrangshuchakraborty7188 3 ปีที่แล้ว +7

      There is another one of 8 hrs

    • @akashbhadouria6727
      @akashbhadouria6727 3 ปีที่แล้ว +9

      See the 8 house course of FCC + 6 hour graph course + still there are lot of Algos there.

    • @gayashan99
      @gayashan99 3 ปีที่แล้ว +4

      Is MIT good

    • @moutasim_ayoubi
      @moutasim_ayoubi 3 ปีที่แล้ว +1

      same hahaha

    • @MindfulSapient
      @MindfulSapient 3 ปีที่แล้ว +2

      @@subhrangshuchakraborty7188 which one is better and more in depth? This one or the 8 hour long one?

  • @mubasharali5409
    @mubasharali5409 ปีที่แล้ว +28

    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 💯

  • @janaka5423
    @janaka5423 ปีที่แล้ว +31

    I can't believe we are getting these stuff for free on TH-cam. Thank you තව ලංකාවේ කොල්ලෙක්. ගැම්මක් තමයි.

    • @user-in2jf7tx1q
      @user-in2jf7tx1q 6 หลายเดือนก่อน +1

      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

    • @MWELASE5
      @MWELASE5 3 หลายเดือนก่อน

      ​@@user-in2jf7tx1qpower of technology

  • @hosea_br
    @hosea_br 3 ปีที่แล้ว +169

    I've completed the fundamentals in python and I was planning on learning DS and algos...this made my day

    • @TanwirAhsanBullseye
      @TanwirAhsanBullseye 3 ปีที่แล้ว +4

      Likewise

    • @madumerekelechi9667
      @madumerekelechi9667 2 ปีที่แล้ว

      Which would you recommend that I learn first.Data structure or python?

    • @kingmaker9082
      @kingmaker9082 2 ปีที่แล้ว +1

      @@madumerekelechi9667 python

    • @adhammohamed3410
      @adhammohamed3410 2 ปีที่แล้ว

      true

    • @darkferiousity
      @darkferiousity 2 ปีที่แล้ว +2

      @@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.

  • @julienielsen4462
    @julienielsen4462 2 ปีที่แล้ว +7

    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.

  • @elbartout2012
    @elbartout2012 2 ปีที่แล้ว +24

    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

  • @chiragpatil2038
    @chiragpatil2038 ปีที่แล้ว +53

    This is one of the best DSA course for beginners.

    • @GSUS-fc6ss
      @GSUS-fc6ss ปีที่แล้ว

      Dsa?

    • @Zionjrpro
      @Zionjrpro ปีที่แล้ว +3

      @@GSUS-fc6ss Data Structures and Algorithms

    • @GTheo.
      @GTheo. 4 หลายเดือนก่อน

      In what language he explained..java or c?

  • @joshuaemmanuel4099
    @joshuaemmanuel4099 2 ปีที่แล้ว +70

    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! 👍

  • @bisqqa1103
    @bisqqa1103 3 ปีที่แล้ว +255

    one entire semester in 5 hours.....

    • @foxtrezz994
      @foxtrezz994 3 หลายเดือนก่อน +14

      . . .for free 😂

    • @w.a.r4623
      @w.a.r4623 3 หลายเดือนก่อน +9

      2.5 hrs *. ;)

    • @ungurubulan666
      @ungurubulan666 2 หลายเดือนก่อน +2

      yo what? this is 1.5 courses at my university

    • @w.a.r4623
      @w.a.r4623 2 หลายเดือนก่อน +7

      @@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.

    • @HHHSS956
      @HHHSS956 2 หลายเดือนก่อน +4

      ​@@w.a.r4623 unfortunately I cannot find intern position even If I have degree 😢😊

  • @icemann155
    @icemann155 3 ปีที่แล้ว +92

    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.

  • @augustusshaminga492
    @augustusshaminga492 2 ปีที่แล้ว +3

    I don't remember paying for TH-cam Premium. This is the best Data Structure and Algorithm tutorial on the internet

  • @utkarshrastogi8791
    @utkarshrastogi8791 3 ปีที่แล้ว +126

    You guys are doing great work, giving free education to us!

  • @summa7046
    @summa7046 ปีที่แล้ว +7

    I understand that thinking in algorithms makes coding much more approachable. You guys did a great job

  • @maryamashraf6370
    @maryamashraf6370 2 ปีที่แล้ว +8

    My 8-year-old brother's watching along excitedly - this is great!

  • @muktarsayeed9198
    @muktarsayeed9198 ปีที่แล้ว +23

    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. 🙏🙏🙏🙏👍👍👍

    • @cafelatte1124
      @cafelatte1124 ปีที่แล้ว

      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.

    • @DeclanOKaneMD
      @DeclanOKaneMD ปีที่แล้ว

      I agree 👍

  • @hamster6924
    @hamster6924 3 ปีที่แล้ว +12

    i just started trying to self teach myself into a junior programmer and this is so great for starting, thank you

  • @pythonicd1239
    @pythonicd1239 3 ปีที่แล้ว +150

    You're just such an amazing tutor! Can't thank you enough for providing this content for free!

    • @Expert_Advice
      @Expert_Advice 2 ปีที่แล้ว

      Linear Search and Binary Search in a very simple way..... ....
      th-cam.com/video/dK8ygtCGwNE/w-d-xo.html

    • @arsh99119
      @arsh99119 ปีที่แล้ว

      thearshblog.blogspot.com/2022/09/beating-youtube-algorithm.html

  • @thomasm528
    @thomasm528 3 ปีที่แล้ว +13

    At 2:53:00 in the Linked List
    The code at position 80 should be
    current=current.next_node

    • @narithnr9750
      @narithnr9750 2 ปีที่แล้ว +1

      Thanks, man.

    • @abidkhanpro
      @abidkhanpro 2 ปีที่แล้ว +1

      I was confused. Thank you for correcting it.

    • @heathj2097
      @heathj2097 ปีที่แล้ว

      I was stuck on this for so long! Thank you!!!

  • @amarachiugwu_
    @amarachiugwu_ 4 หลายเดือนก่อน +7

    Watching this is 2024 and the quality and value of this video is 1000%, I am not even bored one bit.

    • @vanshikabansal8891
      @vanshikabansal8891 2 หลายเดือนก่อน

      is it beginner friendly? Like I wanted to start DSA, should i start with this video?

    • @xtremecubez3751
      @xtremecubez3751 2 หลายเดือนก่อน

      @@vanshikabansal8891 yep

  • @usamamuhammadismail3324
    @usamamuhammadismail3324 3 ปีที่แล้ว +102

    You're literally saving my life guys.
    Thank you so so much.

    • @usamamuhammadismail3324
      @usamamuhammadismail3324 3 ปีที่แล้ว +13

      @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) 🤣

    • @usamamuhammadismail3324
      @usamamuhammadismail3324 3 ปีที่แล้ว +5

      @@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.

    • @driftFD
      @driftFD 3 ปีที่แล้ว +5

      @@danielmbcn You guys take yourselves too seriously. This video has helped him among many other people.

    • @driftFD
      @driftFD 3 ปีที่แล้ว +4

      @@danielmbcn You guys are hounding him because of how he worded his comment - the intent is pretty clear. Get a grip honestly...

    • @reymarckessaguirre5082
      @reymarckessaguirre5082 3 ปีที่แล้ว +1

      @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.

  • @mashudakhter6368
    @mashudakhter6368 2 ปีที่แล้ว +40

    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

  • @sanjaysimon45
    @sanjaysimon45 ปีที่แล้ว +14

    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!

    • @user-yc9rp8mv5b
      @user-yc9rp8mv5b 9 หลายเดือนก่อน

      Dear friend. Visit youtube chanal #solvemyprogrammingtask. Thank you.

  • @okidokiyowyow356
    @okidokiyowyow356 2 ปีที่แล้ว +7

    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.

    • @dan_le_brown
      @dan_le_brown 2 ปีที่แล้ว

      Started today-Jan 1, 2022, and ended today. It's the best course I've ever watched 😌

    • @syntax2922
      @syntax2922 2 ปีที่แล้ว

      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

    • @okidokiyowyow356
      @okidokiyowyow356 2 ปีที่แล้ว

      @@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

    • @madman3727
      @madman3727 9 หลายเดือนก่อน

      @@syntax2922 I think javascript and python are quite same

  • @amin_muaddib
    @amin_muaddib 3 ปีที่แล้ว +53

    Holy moly I'm having this course this semester. Coincidence I think not 😆

    • @mryup6100
      @mryup6100 3 ปีที่แล้ว +13

      It's your destiny to succeed

  • @cherolphoshoko8670
    @cherolphoshoko8670 2 ปีที่แล้ว +24

    This is such an amazing video!! So much value, I wish most courses had this same amount of quality! Thank you for this!!!

  • @mariozaldivar7802
    @mariozaldivar7802 3 ปีที่แล้ว +30

    Not even the courses you have to pay for have this quality.

  • @carlosroberto366
    @carlosroberto366 3 ปีที่แล้ว +25

    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

  • @jianchengzhou3418
    @jianchengzhou3418 2 ปีที่แล้ว +7

    No coding experience but this course makes me understand algorithm well. Thank you.

    • @confidential303
      @confidential303 2 ปีที่แล้ว +1

      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.

  • @PolynoxalClementines
    @PolynoxalClementines 2 ปีที่แล้ว +10

    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.

  • @melissabridi5131
    @melissabridi5131 2 ปีที่แล้ว +34

    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!

  • @bogdandumitrescu8987
    @bogdandumitrescu8987 2 ปีที่แล้ว +30

    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 !

  • @TechyMechie
    @TechyMechie 3 ปีที่แล้ว +7

    Finally Algorithms and Data Structures in Python from two reputable sources. I really appreciate your efforts!

    • @Piku0055
      @Piku0055 2 ปีที่แล้ว

      What's the other source?

    • @C.o.d.e_15
      @C.o.d.e_15 2 ปีที่แล้ว

      @@Piku0055 watch the video nah so you will know the sources

  • @antonyinjila7152
    @antonyinjila7152 ปีที่แล้ว +6

    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]

  • @VorticyHP
    @VorticyHP หลายเดือนก่อน

    i know very little about computer programming, but an hour and 26 mins in it has been so easy to follow and understand!

  • @gameplayer1980
    @gameplayer1980 2 ปีที่แล้ว +3

    A few mins into the presentation, already knew it was going to be gold. Well done!

  • @mrittikad
    @mrittikad 2 ปีที่แล้ว +6

    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

    • @aneclip7117
      @aneclip7117 ปีที่แล้ว

      what about now why quit?

    • @amarsinghpatil6414
      @amarsinghpatil6414 4 หลายเดือนก่อน

      Hey Have You completed an Whole Course

  • @ankitshrivastava3672
    @ankitshrivastava3672 3 ปีที่แล้ว +8

    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)

    • @chinazaekweogu5585
      @chinazaekweogu5585 10 หลายเดือนก่อน

      U are right, this kept confusing me, but I figured out it’s probably an oversight from his end.

  • @ozzyfromspace
    @ozzyfromspace 2 ปีที่แล้ว +2

    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.

  • @ObsessedAwe
    @ObsessedAwe 2 ปีที่แล้ว +11

    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

    • @nettichi
      @nettichi 2 ปีที่แล้ว

      👆👆👆👆👆👆👆Get the best practical training from this Hacker/programmer.
      Very affordable course with alot of tools at your disposal.
      Free hacking softwares and plugins.

    • @appcolab
      @appcolab 2 ปีที่แล้ว +4

      I hope you aced your interview. I am also preparing for some interviews 🙂

  • @tjprange
    @tjprange 3 ปีที่แล้ว +17

    I'm so glad that I got hired and DSA are now a figment of my imagination.

    • @KrishabBashyal
      @KrishabBashyal 2 ปีที่แล้ว +3

      Only until you need to apply for another job

  • @annasmith5216
    @annasmith5216 4 หลายเดือนก่อน +1

    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

    • @asfandyar424
      @asfandyar424 13 วันที่ผ่านมา

      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

  • @v.f.38
    @v.f.38 2 ปีที่แล้ว +1

    Underrated video. Knowing only the language is not enough.

  • @seungjunlee00
    @seungjunlee00 3 ปีที่แล้ว +31

    5:22:08 Congratulations for completing this course. You are the real MVP

    • @guratete
      @guratete 5 หลายเดือนก่อน

      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!

  • @oliverreyes7780
    @oliverreyes7780 2 ปีที่แล้ว +3

    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 🇩🇴

    • @dietrevich
      @dietrevich 2 ปีที่แล้ว +1

      It's "Course". "Curse" means "maldición ".

    • @jathebest2835
      @jathebest2835 2 ปีที่แล้ว

      @@dietrevich lol 😂 I laughed my ass off about this "extraordinarily good" curse..

  • @Deepak-ce4bb
    @Deepak-ce4bb 2 ปีที่แล้ว +4

    This is some high quality content there, and that too for free. I'm beyond grateful. Thanks guys.

  • @bhargavpandya9189
    @bhargavpandya9189 3 ปีที่แล้ว +6

    Extremely simplified explanation... very easy to follow along and understand every single word..... Thank you very much for this!

  • @cybernetck
    @cybernetck 3 ปีที่แล้ว +12

    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!

  • @a7medev
    @a7medev 3 ปีที่แล้ว +64

    Your way of teaching is awesome, this is one of the best course I ever took :)

  • @t74devkw
    @t74devkw 9 หลายเดือนก่อน +2

    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.

  • @f0nd004u
    @f0nd004u 2 ปีที่แล้ว +3

    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.

  • @sabrinae.6361
    @sabrinae.6361 2 ปีที่แล้ว +6

    He is great at articulating his points. Thanks for being clear and concise.

    • @arsh99119
      @arsh99119 ปีที่แล้ว

      thearshblog.blogspot.com/2022/09/beating-youtube-algorithm.html how to beat TH-cam Algorithm 👆

  • @milnueve89
    @milnueve89 3 ปีที่แล้ว +5

    Great content! Thanks.
    Please, add automatic captions for those who are not native English speakers. I want to check some words.

  • @cruyffsworld9731
    @cruyffsworld9731 2 หลายเดือนก่อน +1

    best algorithms course i have ever seen , understood big O instantly .

  • @BamsKensei
    @BamsKensei ปีที่แล้ว +2

    Best algorithms course I have seen so far. And it is free!

  • @Plushymobile
    @Plushymobile 3 ปีที่แล้ว +69

    "Between you and me, the answer is 3"
    John :👁️👄👁️

  • @Elluzive
    @Elluzive 3 ปีที่แล้ว +67

    Ahh, the course that made me switch majors. I won't mind giving it another go lol.

    • @amberperk87
      @amberperk87 3 ปีที่แล้ว +1

      😂😂😂😂

    • @charlespanickerabraham
      @charlespanickerabraham 3 ปีที่แล้ว +5

      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 🤣🤣🤣

    • @mdshajid2771
      @mdshajid2771 3 ปีที่แล้ว +1

      @@charlespanickerabraham same brro its my 3rd time giving same exam

    • @Andrew-ez9ft
      @Andrew-ez9ft 3 ปีที่แล้ว

      @@charlespanickerabraham why did you fail so much?? I am just curious to ask..

    • @charlespanickerabraham
      @charlespanickerabraham 3 ปีที่แล้ว +3

      @@Andrew-ez9ft For one, it is boring as hell and also it's really hard to understand

  • @wanjaphilimon
    @wanjaphilimon ปีที่แล้ว +3

    For the first time I have spent a full hour watching a tutorial on TH-cam without any breaks. Wonderful instructor. Thank you.

  • @avneetsingh3218
    @avneetsingh3218 3 ปีที่แล้ว +3

    One of the best channel on youtube.
    Thanks for ur efforts.

  • @clerisduchrist1253
    @clerisduchrist1253 3 ปีที่แล้ว +6

    I really appreciate your pedagogy sir !!

  • @faizaldece5105
    @faizaldece5105 ปีที่แล้ว +1

    One and only Useful youtube channel. Hats off 👍👍👍

  • @leonvita-zo6ri
    @leonvita-zo6ri ปีที่แล้ว

    OMG first time in my life watch a TH-cam video for one hour and not feeling sleepy or tired, dude you are god.

  • @polkadotpatterns4463
    @polkadotpatterns4463 ปีที่แล้ว +1

    People with a great amount of experience and knowledge on specific career backgrounds should make videos like these to educate others ✊🏼✊🏼✊🏼

  • @Eldalion99999
    @Eldalion99999 6 หลายเดือนก่อน

    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.

  • @napzzz944
    @napzzz944 3 ปีที่แล้ว +13

    Love Treehouse!! This is so awesome to see. I took some of their FSJS content and loved it. Highly recommend!

  • @NikhilJainLive
    @NikhilJainLive 3 ปีที่แล้ว +26

    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]

    • @CountingStars333
      @CountingStars333 ปีที่แล้ว

      Pasan? Prasanth.

    • @NikhilJainLive
      @NikhilJainLive ปีที่แล้ว +1

      @@CountingStars333 Pasan Premaratne

    • @hariharan199229
      @hariharan199229 ปีที่แล้ว

      Yes. you're right at this point. I have figured it out during the implementation of the code

  • @lunal419
    @lunal419 2 ปีที่แล้ว +2

    The book analogy for recursive functions is so clear, thanks!

  • @JT-gg6kc
    @JT-gg6kc 5 หลายเดือนก่อน +1

    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.

    • @valentinleguizamon9957
      @valentinleguizamon9957 5 หลายเดือนก่อน +1

      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

  • @BiP00
    @BiP00 3 ปีที่แล้ว +15

    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.

  • @syedumair9554
    @syedumair9554 3 ปีที่แล้ว +17

    Awesome and knowledgeable content is here
    Thanks to FCC contributors

  • @I_hu85ghjo
    @I_hu85ghjo ปีที่แล้ว +2

    Best DSA course ever! Thank you so much

  • @M.Rehan10987
    @M.Rehan10987 ปีที่แล้ว +1

    Really appreciate your content. Love it. I wish Colleges or Universities need instructors like you who boast the student's career 4x times faster.

  • @Kcodeofficial
    @Kcodeofficial 3 ปีที่แล้ว +9

    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

  • @MichaelNeelyTech
    @MichaelNeelyTech 11 หลายเดือนก่อน +4

    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.

    • @user-uh1ob7pl6n
      @user-uh1ob7pl6n 8 หลายเดือนก่อน

      Thanks a lot bro, cuz i feel something wrong when wrote node.next_node instead of current.next_node

  • @ahmedelsehrawy3809
    @ahmedelsehrawy3809 ปีที่แล้ว +1

    that's awesome I liked the way he explained everything I know algorithms but I needed to refresh my memory thanks

  • @noble2694
    @noble2694 3 ปีที่แล้ว +3

    The best channel for beginners.
    Really great teaching.
    Save money.

  • @easysolve8960
    @easysolve8960 3 ปีที่แล้ว +11

    I love this course! Brilliant and an instructor I can understand.

  • @saichander2314
    @saichander2314 3 ปีที่แล้ว +8

    and the best part is they explained the concepts usin python 👍

  • @whm3317
    @whm3317 2 ปีที่แล้ว +1

    this is an incredible quality video all for free. I would 100% pay money for this. thank you.

  • @jcoder8965
    @jcoder8965 2 ปีที่แล้ว +2

    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!

  • @Shashank_Shahi1989
    @Shashank_Shahi1989 3 ปีที่แล้ว +7

    Thank You for your free course.👍👍
    Do you have any plans to upload full university level long course on "Theoretical computer science" ?

  • @manueludeh3041
    @manueludeh3041 3 ปีที่แล้ว +16

    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?

    • @Expert_Advice
      @Expert_Advice 2 ปีที่แล้ว

      Linear Search and Binary Search in a very simple way..... ....
      th-cam.com/video/dK8ygtCGwNE/w-d-xo.html

    • @arsh99119
      @arsh99119 ปีที่แล้ว

      thearshblog.blogspot.com/2022/09/beating-youtube-algorithm.html
      how to beat TH-cam Algorithm 👆

  • @NugrohoBudianggoro
    @NugrohoBudianggoro 3 หลายเดือนก่อน +6

    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.

    • @Wysinger12
      @Wysinger12 24 วันที่ผ่านมา +1

      Haha I mean why even say this?

  • @SurajSinghYT
    @SurajSinghYT 3 ปีที่แล้ว +363

    Education is free these days ,
    Its just that the fact is not being told to students.

    • @TheSKooler
      @TheSKooler 3 ปีที่แล้ว +14

      If that happens loads of business will halt dude

    • @obinator9065
      @obinator9065 3 ปีที่แล้ว +11

      @@TheSKooler yeah sure, exactly the reason why google, microsoft, I.e offers official courses for FREE

    • @bradleytaniguchi1187
      @bradleytaniguchi1187 3 ปีที่แล้ว +33

      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.

    • @benlartey4248
      @benlartey4248 3 ปีที่แล้ว

      You are very right
      I always say this

    • @keithprice7119
      @keithprice7119 3 ปีที่แล้ว +2

      @@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.

  • @madanguin2479
    @madanguin2479 2 ปีที่แล้ว +6

    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.

    • @tempire2003
      @tempire2003 ปีที่แล้ว

      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.

  • @PR-zv4ur
    @PR-zv4ur 11 หลายเดือนก่อน

    WOW!! Prasan is quite crystal clear in his explanation. Hatsoff Man..

  • @GoldenEmperor5Manifest
    @GoldenEmperor5Manifest ปีที่แล้ว

    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.

  • @ChathurangaKasthuriarachchi
    @ChathurangaKasthuriarachchi 3 ปีที่แล้ว +4

    Pasan Premaratne Proud Sri Lankan