Data Structures Easy to Advanced Course - Full Tutorial from a Google Engineer

Sdílet
Vložit
  • čas přidán 25. 08. 2024

Komentáře • 2,1K

  • @freecodecamp
    @freecodecamp  Před 4 lety +698

    Click the "JOIN" button below the video to support freeCodeCamp.org!

  • @ramon9789
    @ramon9789 Před 4 lety +2619

    English is not my native language, so I appreciate that you speak slowly and clearly, I was able to see the whole video without subtitles and be more focused on the screen.

  • @danielmccarthy3366
    @danielmccarthy3366 Před 4 lety +1629

    The fact your 8 hour video covers what I needed to know over 2 semesters is amazing! Thanks for the video man!

    • @divyareddy7622
      @divyareddy7622 Před 2 lety +5

      What does last := 0 mean? I don't understand := 13:24

    • @FitFlicks02
      @FitFlicks02 Před 2 lety +11

      @@divyareddy7622 := is usually used as pseudocode, it means the same thing as '='

    • @ahmetcalskan8901
      @ahmetcalskan8901 Před 2 lety +1

      @@divyareddy7622 it means update the left statement with the value on the right

    • @h.kubilay6160
      @h.kubilay6160 Před 2 lety +12

      @@ahmetcalskan8901 no it means declaration, you use = to update. := to init.

    • @istaahify
      @istaahify Před 2 lety +11

      this and the algorithms video literally covered what I learnt for my algorithms and data modules at university but even better explained

  • @sricharansingam8302
    @sricharansingam8302 Před 3 lety +360

    What I appreciate more than anything is the dude using dark mode. Thanks, mate.

    • @scurvofpcp
      @scurvofpcp Před 2 lety +4

      You need more upvotes for that comment, but sadly I can give but one.

  • @rgpbando
    @rgpbando Před 4 lety +759

    He worked so hard for us to learn, 8 hours!! Deserves and oscar

    • @horccruxxxop4184
      @horccruxxxop4184 Před 3 lety +4

      Is it an overview of data structures or it is a in depth knowledge video?

    • @alok2656
      @alok2656 Před 3 lety +18

      @@islandsfuldkorn yeah, you are right. Oscar is for actors. Actually he deserves Noble Prize. 😙

    • @dr_davinci
      @dr_davinci Před 3 lety +9

      @@horccruxxxop4184 It sits between them.

    • @adyan4010
      @adyan4010 Před 2 lety +5

      @@alok2656 He more like deserves Noble PEACE prize. Noble prize are for those who invent and contribute something to science and other medium in language.

    • @alok2656
      @alok2656 Před 2 lety +2

      @@adyan4010 ok ok

  • @nakshatranahar
    @nakshatranahar Před 4 lety +2345

    ⌨️ (0:00:00) Abstract data types
    ⌨️ (0:04:28) Introduction to Big-O
    ⌨️ (0:17:00) Dynamic and Static Arrays
    ⌨️ (0:27:40) Dynamic Array Code
    ⌨️ (0:35:03) Linked Lists Introduction
    ⌨️ (0:49:16) Doubly Linked List Code
    ⌨️ (0:58:26) Stack Introduction
    ⌨️ (1:09:40) Stack Implementation
    ⌨️ (1:12:49) Stack Code
    ⌨️ (1:15:58) Queue Introduction
    ⌨️ (1:22:03) Queue Implementation
    ⌨️ (1:27:26) Queue Code
    ⌨️ (1:31:32) Priority Queue Introduction
    ⌨️ (1:44:16) Priority Queue Min Heaps and Max Heaps
    ⌨️ (1:49:55) Priority Queue Inserting Elements
    ⌨️ (1:59:27) Priority Queue Removing Elements
    ⌨️ (2:13:00) Priority Queue Code
    ⌨️ (2:28:26) Union Find Introduction
    ⌨️ (2:33:57) Union Find Kruskal's Algorithm
    ⌨️ (2:40:04) Union Find - Union and Find Operations
    ⌨️ (2:50:30) Union Find Path Compression
    ⌨️ (2:56:37) Union Find Code
    ⌨️ (3:03:54) Binary Search Tree Introduction
    ⌨️ (3:15:57) Binary Search Tree Insertion
    ⌨️ (3:21:20) Binary Search Tree Removal
    ⌨️ (3:34:47) Binary Search Tree Traversals
    ⌨️ (3:46:17) Binary Search Tree Code
    ⌨️ (3:59:26) Hash table hash function
    ⌨️ (4:16:25) Hash table separate chaining
    ⌨️ (4:24:10) Hash table separate chaining source code
    ⌨️ (4:35:44) Hash table open addressing
    ⌨️ (4:46:36) Hash table linear probing
    ⌨️ (5:00:21) Hash table quadratic probing
    ⌨️ (5:09:32) Hash table double hashing
    ⌨️ (5:23:56) Hash table open addressing removing
    ⌨️ (5:31:02) Hash table open addressing code
    ⌨️ (5:45:36) Fenwick Tree range queries
    ⌨️ (5:58:46) Fenwick Tree point updates
    ⌨️ (6:03:09) Fenwick Tree construction
    ⌨️ (6:09:21) Fenwick tree source code
    ⌨️ (6:14:47) Suffix Array introduction
    ⌨️ (6:17:54) Longest Common Prefix (LCP) array
    ⌨️ (6:21:07) Suffix array finding unique substrings
    ⌨️ (6:25:36) Longest common substring problem suffix array
    ⌨️ (6:37:04) Longest common substring problem suffix array part 2
    ⌨️ (6:43:41) Longest Repeated Substring suffix array
    ⌨️ (6:48:13) Balanced binary search tree rotations
    ⌨️ (6:56:43) AVL tree insertion
    ⌨️ (7:05:42) AVL tree removals
    ⌨️ (7:14:12) AVL tree source code
    ⌨️ (7:30:49) Indexed Priority Queue | Data Structure
    ⌨️ (7:55:10) Indexed Priority Queue | Data Structure | Source Code

  • @hitec1691
    @hitec1691 Před 4 lety +220

    Really appreciate the black background. Its easy on the eyes.

    • @Sk8erMorris
      @Sk8erMorris Před 4 lety

      at night.. it's all about setting and contrast.. day(light theme)/night(dark theme).. can't have supper bright screen at night .. that strains the eyes

  • @alihelbah8798
    @alihelbah8798 Před rokem +173

    I had to stop the video to write this comment.... the wealth of knowledge he is sharing is priceless. I have an interview coming up and this is exactly what I needed. thank you William Fiset and may you be rewarded for you efforts . I will definitely look for more of your content.

  • @shortssquad1
    @shortssquad1 Před 5 lety +441

    Every Time I thought that I need to learn this thing. You immediately uploaded the video exactly regarding that. I love it a lot.

    • @sushantkunkekar2155
      @sushantkunkekar2155 Před 5 lety +5

      Same here

    • @ayyubayyyub9415
      @ayyubayyyub9415 Před 5 lety +11

      Thank Allah and he will increase you in more and more.

    • @Gold_fi
      @Gold_fi Před 5 lety +2

      Same here too

    • @shortssquad1
      @shortssquad1 Před 5 lety +3

      @@ayyubayyyub9415 Thank you brother. Same to you.

    • @jayeshghadiali1682
      @jayeshghadiali1682 Před 4 lety +6

      Why this happened do you know? It’s Because of AI and google’s intelligence of your thought capturing. Learn this technology too.

  • @pranavpatil131
    @pranavpatil131 Před 5 lety +296

    This Channel is A Gold Mine 🔝🔝

  • @jacobp6891
    @jacobp6891 Před 4 lety +54

    My data structures class is complete garbage, so I appreciate this video immensely

  • @agustinvis5720
    @agustinvis5720 Před 4 lety +16

    8hours is nothing to learn this kind of things. I love this channel. Thank you very much for all the videos.

  • @aditikhedkar8514
    @aditikhedkar8514 Před 5 lety +72

    i feel so bad you guys give pure knowledge and no ad breaks.thankyou so much!!!!!

  • @Sgoose105
    @Sgoose105 Před 5 lety +8544

    *1.5 speed saves you about 3 hours of life :)

    • @aniketshukla540
      @aniketshukla540 Před 5 lety +1271

      It's more about learning concepts rather than watch time.

    • @agent000000008
      @agent000000008 Před 4 lety +331

      Payton Zhong i would say 2x is still
      Too slow

    • @Sgoose105
      @Sgoose105 Před 4 lety +306

      @@aniketshukla540 u r right, but he speaks really slowly

    • @lordx4641
      @lordx4641 Před 4 lety +52

      @@Sgoose105 yes in order to explain

    • @bhagavan_ganesul
      @bhagavan_ganesul Před 4 lety +27

      @@agent000000008 You must be an alien...

  • @toughchic6377
    @toughchic6377 Před 4 lety +39

    Thank you so much, sir! You saved my life for my examinations in this subject. Teachers struggle to explain them without the jargon and proper diagrams. You are AWESOME!!

    • @TheBoredandCool
      @TheBoredandCool Před 3 lety

      GeeksforGeeks is organising mini course of DSA that you should not miss out.
      Why??
      1. Live QnA sessions, you can clear all doubts related to DSA. Any doubt from LinkedList to Graph.
      2. You will get practice problems after every Data structure to make you good at DSA and crystal clear concepts.
      3. After completion of course you will get certificate and can access course anytime.
      4. Its FREE!!! But only if you use the below code -
      GFGD4Y2JR
      Register here-
      practice.geeksforgeeks.org/courses/Workshop-DSA?loginMode=308

    • @NSHEIKHSAIRABANU
      @NSHEIKHSAIRABANU Před 2 lety

      Hey can u plz tell me which language is used inthis video?

    • @toughchic6377
      @toughchic6377 Před 2 lety +4

      @@NSHEIKHSAIRABANU English

    • @NSHEIKHSAIRABANU
      @NSHEIKHSAIRABANU Před 2 lety

      @@toughchic6377 not that programing language

    • @toughchic6377
      @toughchic6377 Před 2 lety +3

      @@NSHEIKHSAIRABANU oh. Sorry. Lol. He uses Java

  • @gabrielrfg4852
    @gabrielrfg4852 Před 2 lety +17

    Watching this to prepare myself for interviews after finishing my degree in CS. Just want to relieve some of you of your impostor syndrome. It's normal to forget some stuff and not know this by heart even after 5 years in uni.

    • @divyareddy7622
      @divyareddy7622 Před 2 lety +1

      What does last := 0 mean? I don't understand := 13:24

  • @taylorbrennan2832
    @taylorbrennan2832 Před 4 lety +88

    Thank you for these videos!! I haven’t taken a class in 2 year and I returned to school right into my Senior electives. This really helped remind me of all these methods!

    • @vikasgarg2035
      @vikasgarg2035 Před 3 lety +3

      Hey Taylor, you have seen this tutorial. Can you please let me know which is language used in this tutorial? I am a beginner and just learnt the javascript. Is this JavaScript?

    • @alexpeak1008
      @alexpeak1008 Před 2 lety +3

      @Vikas Garg this video used Java

    • @vikasgarg2035
      @vikasgarg2035 Před 2 lety +3

      @@alexpeak1008 thanks Alex. BTW I already got the answer. :)

  • @delarosae
    @delarosae Před 4 lety +12

    Day 1 college lecture was ADT and I wasn’t really understand the concept and you explained it in a couple of minutes. Thank you!

  • @samCoder
    @samCoder Před 3 lety +43

    ⭐️ Course Contents ⭐️
    ⌨️ (0:00:00) Abstract data types
    ⌨️ (0:04:28) Introduction to Big-O
    ⌨️ (0:17:00) Dynamic and Static Arrays
    ⌨️ (0:27:40) Dynamic Array Code
    ⌨️ (0:35:03) Linked Lists Introduction
    ⌨️ (0:49:16) Doubly Linked List Code
    ⌨️ (0:58:26) Stack Introduction
    ⌨️ (1:09:40) Stack Implementation
    ⌨️ (1:12:49) Stack Code
    ⌨️ (1:15:58) Queue Introduction
    ⌨️ (1:22:03) Queue Implementation
    ⌨️ (1:27:26) Queue Code
    ⌨️ (1:31:32) Priority Queue Introduction
    ⌨️ (1:44:16) Priority Queue Min Heaps and Max Heaps
    ⌨️ (1:49:55) Priority Queue Inserting Elements
    ⌨️ (1:59:27) Priority Queue Removing Elements
    ⌨️ (2:13:00) Priority Queue Code
    ⌨️ (2:28:26) Union Find Introduction
    ⌨️ (2:33:57) Union Find Kruskal's Algorithm
    ⌨️ (2:40:04) Union Find - Union and Find Operations
    ⌨️ (2:50:30) Union Find Path Compression
    ⌨️ (2:56:37) Union Find Code
    ⌨️ (3:03:54) Binary Search Tree Introduction
    ⌨️ (3:15:57) Binary Search Tree Insertion
    ⌨️ (3:21:20) Binary Search Tree Removal
    ⌨️ (3:34:47) Binary Search Tree Traversals
    ⌨️ (3:46:17) Binary Search Tree Code
    ⌨️ (3:59:26) Hash table hash function
    ⌨️ (4:16:25) Hash table separate chaining
    ⌨️ (4:24:10) Hash table separate chaining source code
    ⌨️ (4:35:44) Hash table open addressing
    ⌨️ (4:46:36) Hash table linear probing
    ⌨️ (5:00:21) Hash table quadratic probing
    ⌨️ (5:09:32) Hash table double hashing
    ⌨️ (5:23:56) Hash table open addressing removing
    ⌨️ (5:31:02) Hash table open addressing code
    ⌨️ (5:45:36) Fenwick Tree range queries
    ⌨️ (5:58:46) Fenwick Tree point updates
    ⌨️ (6:03:09) Fenwick Tree construction
    ⌨️ (6:09:21) Fenwick tree source code
    ⌨️ (6:14:47) Suffix Array introduction
    ⌨️ (6:17:54) Longest Common Prefix (LCP) array
    ⌨️ (6:21:07) Suffix array finding unique substrings
    ⌨️ (6:25:36) Longest common substring problem suffix array
    ⌨️ (6:37:04) Longest common substring problem suffix array part 2
    ⌨️ (6:43:41) Longest Repeated Substring suffix array
    ⌨️ (6:48:13) Balanced binary search tree rotations
    ⌨️ (6:56:43) AVL tree insertion
    ⌨️ (7:05:42) AVL tree removals
    ⌨️ (7:14:12) AVL tree source code
    ⌨️ (7:30:49) Indexed Priority Queue | Data Structure
    ⌨️ (7:55:10) Indexed Priority Queue | Data Structure | Source Code

    • @framepointer
      @framepointer Před 3 lety +3

      why did you copy the other guy's comment

    • @sanskarswaraj6702
      @sanskarswaraj6702 Před 3 lety +5

      @@framepointer The other guy copied from video description. LOL

    • @framepointer
      @framepointer Před 3 lety +2

      @@sanskarswaraj6702 copyception

  • @yahyafati
    @yahyafati Před 3 lety +127

    I really don't know how to thank you. This was an absolutely amazing video. It breaks difficult topics into simpler pieces, and all of this for free. I really appreciate this. Thank you. I really like this. I'm going to watch your series on Graph Theory next, I'm sure it will be as good - if not better - as this one. Again THANK YOU VERY MUCH.

    • @yahyafati
      @yahyafati Před 3 lety +7

      Btw it took me a month to finish this video.

    • @famoxyzfamoxyz7027
      @famoxyzfamoxyz7027 Před 2 lety +1

      @@yahyafati man, you're weird. you should be in the movies.

    • @naveenk2524
      @naveenk2524 Před rokem +1

      @@yahyafati nice

    • @vishverma9899968908
      @vishverma9899968908 Před 7 měsíci

      @@yahyafati Everyone has their own pace, you finished it, that's important. Good Job !!

  • @alex86080
    @alex86080 Před 4 lety +1226

    "okay mom one more youtube video and im going to bed"

    • @ajays6393
      @ajays6393 Před 4 lety +17

      One more video or 10 more minutes. Whichever comes first.

    • @Mateus.007
      @Mateus.007 Před 4 lety +2

      @@ajays6393 When pass 10 minutes you cannot start new videos.

    • @Mateus.007
      @Mateus.007 Před 4 lety +3

      Ajay S whatnever comes later.

    • @ayush4565
      @ayush4565 Před 4 lety +5

      So you are not going to bed

    • @adisingh9341
      @adisingh9341 Před 4 lety +9

      Tada !!! It's morning and I'm going to sleep mom as promised 😴

  • @huszartony4362
    @huszartony4362 Před 4 lety +24

    Guys, the least we can do is like this video and perhaps even comment or share it. Give them what they deserve!!!

    • @TheBoredandCool
      @TheBoredandCool Před 3 lety

      GeeksforGeeks is organising mini course of DSA that you should not miss out.
      Why??
      1. Live QnA sessions, you can clear all doubts related to DSA. Any doubt from LinkedList to Graph.
      2. You will get practice problems after every Data structure to make you good at DSA and crystal clear concepts.
      3. After completion of course you will get certificate and can access course anytime.
      4. Its FREE!!! But only if you use the below code -
      GFGD4Y2JR
      Register here-
      practice.geeksforgeeks.org/courses/Workshop-DSA?loginMode=308

  • @2hot2handle65
    @2hot2handle65 Před 3 lety +512

    Everybody gangsta until they hit algorithms.

  • @AbhishekGupta-kn3cz
    @AbhishekGupta-kn3cz Před 3 měsíci +14

    my-opinion : this course is not for someone who needs handson with explanation. TBH - very min handson, person just walks over through codes in few mins and gives reference. Course lists/topics are good, I would take the DSA topics from here and view some-one else video for handson explanation. Hope this helps who-ever reads it.

    • @mishalminal6963
      @mishalminal6963 Před měsícem

      Is it good enough to clear your university course??if not then can u suggest me a good channel for DSA 😅

    • @AbhishekGupta-kn3cz
      @AbhishekGupta-kn3cz Před měsícem +1

      @@mishalminal6963 i think it will best if you follow every topics/subtopics in your course one-by-one and follow different contents / articles / channel. I myself did that and definitely do not regret it. Make sure you make notes along the way. If you wanna practice DSA coding, you can blindly practice 400-500questions of striver sheet.

    • @mishalminal6963
      @mishalminal6963 Před měsícem

      @@AbhishekGupta-kn3cz thanks ✨✨

  • @stephenpino235
    @stephenpino235 Před 4 lety +23

    Love what you guys are doing with free quality no ad courses. Hats off to you

  • @luiscenteno8118
    @luiscenteno8118 Před 4 lety +83

    This quite literally saved my mental health! Thank you so much!

    • @niall4196
      @niall4196 Před 4 lety +9

      good stuff luis hope your doing alright

  • @viniciuscastro4281
    @viniciuscastro4281 Před 4 lety +34

    Best tutorial I've seen so far. Explained and organized the topics in the best possible way.
    This man is an angel.

    • @oabouassy
      @oabouassy Před 3 lety +1

      You can recommend a better course for DS ?

    • @xynyde0
      @xynyde0 Před 3 lety +1

      @@oabouassy CLRS

    • @oabouassy
      @oabouassy Před 3 lety

      @@xynyde0do you mean intro to Algo book ?

  • @mohamedtalal4468
    @mohamedtalal4468 Před měsícem +1

    This is one of the best DS courses I have ever seen in my whole life

  • @OmegaFalcon
    @OmegaFalcon Před 4 lety +12

    If only I had my computer back, I'd be binging these for months.

  • @justynak.6686
    @justynak.6686 Před 2 lety +10

    Not sure if anyone already commented on this. In the Queues section - it's worth mentioning that there are two types of queues - First In First Out (FIFO) and First In Last Out (FILO). In the video, the visualisation of the queue shows FIFO queue, but visualisation of implementation through LinkedList shows FILO queue instead, which may be confusing for the viewers.
    edit:
    FIFO are queues and FILO are stacks, so a FILO stack was presented as a queue.

    • @tuananhdo1870
      @tuananhdo1870 Před 2 lety

      I think fifo is a queu and filo is a stack

    • @randomvids3686
      @randomvids3686 Před 2 lety

      Queue is FIFO, while Stack is FILO. Don't confuse between them

    • @justynak.6686
      @justynak.6686 Před 2 lety

      Yeah I was thinking that later on. This doesn't change the fact that FILO was presented as a queue.

    • @buihung3704
      @buihung3704 Před rokem +2

      Hmm FILO is an accounting/business term, i've never heard FILO is Stack before. I think it's LIFO (Last In First Out).

  • @stannone7272
    @stannone7272 Před 3 lety +2

    1:58 (bubbling) executed on the array representation of the heap is gold! no need to handle any pointers. Its just some swapping on indexes.

  • @rizzlybear929
    @rizzlybear929 Před 5 lety +98

    I am starting classes soon to obtain my degree so thanks so much for making this I am listening to it getting familiar for now so that when I begin my classes It won't be too hard I'll be familiar with it ;)

  • @tausifulrahman
    @tausifulrahman Před 3 lety +21

    Absolutely brilliant session, I challenged my self to watch whole course in 2 days and accomplished it. Thank you so much for teaching a very important course very efficiently.

  • @parthjain3425
    @parthjain3425 Před 2 lety +13

    I started self learning programming with python and man does python makes handling arrays so easy. Great content. Didnt had that fundamental kowledge about data structures as I switched from accounting. Helps me so much!

    • @MuhammadAsif-uh9pv
      @MuhammadAsif-uh9pv Před rokem

      hey @parth jain hope you will be good. am also working in accounting. is it a good idea to switch to this field?
      do you find any relevance between these two fields and how is it working out for you?

  • @dramese
    @dramese Před 3 lety +2

    Create instructor, I attempted to read a book on data structure, but couldn't understand, this instructors made it so clear. Thanks

  • @lovethnwokike8210
    @lovethnwokike8210 Před 5 lety +39

    am so happy that java was used, you hardly see data structures in java. Thank you

  • @simons.soa1
    @simons.soa1 Před rokem +6

    I got in love with this video. You break down everything to my understanding. Besides starting to program is not easy as I grown with a business career in mind. But I'm getting interested in this aspect of computer science. Thank you very much for this resource.

  • @mariedrapalova7365
    @mariedrapalova7365 Před 3 lety +127

    Love the tutorial. Thank you very much. A friendly suggestion: Stay consistent with the operations on data structure. (e.g. Search, Access, Remove etc) and maybe define the meaning. I noticed sometimes you use 'Search' but really mean 'Access' and it becomes confusing for some of us :).

  • @peternaveen1832
    @peternaveen1832 Před 4 lety +4

    The first few slides itself shows the quality of the video. I have never seen such a detailed explanation of Big O notation anywhere.. i am going to spend my next few weekends with this video and practice some coding..

  • @diego.777ramos
    @diego.777ramos Před 4 lety +70

    Woo , second part with Red Black , B, B+ , A* , Indexing to disk 😅

  • @vaibhavpatil6745
    @vaibhavpatil6745 Před 5 lety +47

    Really appreciate the hard work that's been put in this video👍👍

  • @justinpalmer9387
    @justinpalmer9387 Před 3 lety +2

    Thank you so much for this, 3 more weeks till school starts and was in a giant need for a head start

  • @tysonefford5522
    @tysonefford5522 Před rokem +2

    I am happy as a beginner I have to learn data structures, thank you so much for this course, one day l will be a good software engineer.

  • @viticoinf
    @viticoinf Před 4 lety +39

    Awesome Will, had to put you in playback speed 1.5 lol but is great to remember and there are even small details I didn't know :) Great to refresh my mind again! Thank you for putting this material out there. Nice work!

  • @SteelerY360Nation
    @SteelerY360Nation Před 5 lety +14

    I’m taking 3 Data Structures & Algorithms Classes Online @ Udemy.
    One more Class on DS won’t Kill Me! Thank You👍🙏

    • @seeknndestroy420
      @seeknndestroy420 Před 4 lety +1

      which course did you liked most and which would you suggest?

    • @SteelerY360Nation
      @SteelerY360Nation Před 4 lety +1

      Talha Sarı - Usually, DS & Algorithms are taught in one course, but I enrolled in “Computer Science 101: Master the theory behind Programming”. You wanna Learn basic idea about both, but each language has its own. This class only taught Algorithms, so I had to take 2 more for DS, but I read books on DS & Algorithms in Python (the language I’m studying). I hope this helps 🙏

    • @seeknndestroy420
      @seeknndestroy420 Před 4 lety +1

      Steeler Y360 Nation thank you for your answer! I also enrolled CS50 which is Harvard’s computer science course, if anyone interested i highly recommend it is feee online course and thought programming skills from 0. So i guess this data course would be enough for me

    • @SteelerY360Nation
      @SteelerY360Nation Před 4 lety

      Talha Sarı - Thank You for the info! 🙏 My advice to you is that if you already have a chosen Language that you wanna study or get a job in, study that particular Programming Language’s DS & Algorithms.

    • @seeknndestroy420
      @seeknndestroy420 Před 4 lety +1

      @@SteelerY360Nation oh I didn't know there were seperate data structures courses for specific languages. I'm studying on C right know then i will look for it, appreciated that for your interest and valuable advice :)

  • @scnt
    @scnt Před rokem +1

    This channel is just the BEST source of learning many things for free, really appreciate you guys doing this, these videos helped me tremendously. Thank you!!!

  • @gamesandsoftwares1441
    @gamesandsoftwares1441 Před 4 lety +1

    this chanel is a freaking gold mine thx alot guys i droped from uni bcz of money but here im still going at least im learning and gaining skills thx alot

  • @tinyxtina_
    @tinyxtina_ Před 4 lety +14

    i wish this video existed while i was actually taking Data Structures in school. I wouldn't have had to bs my way through class because the professor didn't really explain it well and i was struggling so hard.

  • @brentjackson6966
    @brentjackson6966 Před 4 lety +13

    About 32 mins in, the dynamic array "removeAt" function begins with "if (index < 0) && (index >len) throw OutOfBoundsExcept;"
    The "&&" should be an "¦¦".

    • @ajays6393
      @ajays6393 Před 4 lety

      Even so, C++ doesn't agree ;)

  • @afrozshabbir100
    @afrozshabbir100 Před 4 měsíci

    After lot of difficulties in understanding....
    I could finally complete the video with my own handwritten notes. It took me nearly 1 week.

  • @salonibanerjee643
    @salonibanerjee643 Před 4 lety +2

    By far one of the most comprehensive explanations!

  • @bir_deb
    @bir_deb Před 4 lety +5

    Finally I completed watching and listening to this course. And I am in love with you!

  • @bhargavacharan2262
    @bhargavacharan2262 Před 4 lety +4

    Thanks a lot William :) I have learnt a lot from this video. Got a good understanding on Priority Queues.

  • @allegeddevil1956
    @allegeddevil1956 Před 9 měsíci +1

    at around 15:50, the first inner loop does 41 times, not 40 because 50-10 + 1 = 41 not 40. It is 41 and not 40 because of the less than and equal to part. The
    "and equal to" means +1.

  • @RussellSmith-nv2je
    @RussellSmith-nv2je Před 2 lety +8

    Great video. Thank you so much for all the work you put into this!

  • @vellano.1637
    @vellano.1637 Před 5 lety +3

    8 hrs thats some serious work.. U are the best!

  • @Ankushdas2001
    @Ankushdas2001 Před 4 lety +13

    Don't mind just a personal timestamp diary.
    1 September 2020 : 00:00 to 50:00
    5 September 2020: 50:00 to 01:22:04

    • @aadichauhan947
      @aadichauhan947 Před 4 lety +4

      did u watch today 😠😠😠

    • @Ankushdas2001
      @Ankushdas2001 Před 4 lety +1

      @@aadichauhan947 no i didn't but i will of today, i am also doing other courses so

    • @aadichauhan947
      @aadichauhan947 Před 4 lety +1

      @@Ankushdas2001 nice 😎

    • @ProGamerSergiu
      @ProGamerSergiu Před 4 lety +4

      Bro stay on the video don’t slack !

    • @jinjikisano179
      @jinjikisano179 Před 4 lety +3

      Just a friendly reminder for you to study

  • @spice940
    @spice940 Před 4 lety +26

    Where were you during my college? These concepts use to look so complex.

    • @07Flash11MRC
      @07Flash11MRC Před 3 lety +1

      @@haval00 Dude, there's nothing there... xDxD

    • @haval00
      @haval00 Před 3 lety

      @@07Flash11MRC post got deleted

    • @haval00
      @haval00 Před 3 lety

      @@07Flash11MRC sorry mate 😅

  • @xando81
    @xando81 Před 2 lety +3

    @15:18 The Big O Notation for O(n^4) is slightly wrong, but the final result is correct. The distribution of 3N should yield 120N which is 3N * 40.

    • @farhodotaboev3324
      @farhodotaboev3324 Před 2 lety

      yeah and binary search code has variable names wrong, should be high and low instead of hi and lo

  • @minima_listic
    @minima_listic Před 3 lety +10

    Just a short note for everyone studying for Coding Interviews or just studying in general; the most imp DS's are
    Arrays
    Stacks
    Linked Lists
    Queues
    Trees
    Graphs and
    Hash Tables

    • @trueblue08281
      @trueblue08281 Před 3 lety

      what about arraylist,hashmap

    • @Atharva_kathiyawadi
      @Atharva_kathiyawadi Před 2 lety

      hey I've one doubt. some course doesn't use collection java. in this video used collection and some other not. what is this stuffs i don't understand

    • @sammly768
      @sammly768 Před 2 lety

      Dynamic Programming matters for Product Based Companies

  • @shamy1st
    @shamy1st Před 4 lety +4

    It's better to implement Stack using ArrayDeque than using LinkedList:
    1. ArrayDeque is faster. (Look at ArrayDeque documentation)
    2. LinkedList consumes more memory than ArrayDeque because LinkedList is a doubly-linked list.

    • @AndreeaDianaChiriac
      @AndreeaDianaChiriac Před 2 lety

      It depends on the language. Most languages have their own `stack` library/module, which is by far the best way to approach it. Linked List consume more memory, but it's really hard to think about a situation where the memory limit may be reached... but there is no way to say that linked lists are slower than a normal array. Deque is a different data structure.

  • @inigohohmeyer1791
    @inigohohmeyer1791 Před 3 lety +1

    Why does this man teach much faster and much better than my actual data structures teacher.

  • @ricardocambundo2527
    @ricardocambundo2527 Před 2 lety +7

    Amazing video. I really appreciate it all the hard work, that went into this series. Rest assured, this served alot of people well.

  • @dhruvpathi941
    @dhruvpathi941 Před 4 lety +3

    i learnt more in this video than i ever will in university
    thanks a lot

  • @AshishSharma-pm1dc
    @AshishSharma-pm1dc Před 4 lety +91

    When tutorials excite you more than IPhone 11 reviews 😊😊😊

    • @kamilmodawski3630
      @kamilmodawski3630 Před 4 lety +29

      Everything is more exciting than this garbage overpriced phone

    • @asiimwejohnson7388
      @asiimwejohnson7388 Před 4 lety +3

      I agree I agree

    • @sumitsaurabh9529
      @sumitsaurabh9529 Před 4 lety +1

      @@kamilmodawski3630 OMG I agree

    • @theendurance
      @theendurance Před 4 lety +3

      @Kamil Młodawski You must be living in a 3rd world country if you think $700 is overpriced lmao. The iPhone 11 is the best value phone out right now

    • @SpaceTimeBeing_
      @SpaceTimeBeing_ Před 4 lety +4

      @@theendurance Damn look at this money god

  • @jesuyacked
    @jesuyacked Před 2 lety +4

    Amazing. It is simply amazing that you guys are giving that much value. Thank you

  • @harshit.jindal
    @harshit.jindal Před 4 lety +245

    He calls EVERY single data structure his 'favourite' data structure 😂😂

  • @mynameismynameis666
    @mynameismynameis666 Před 5 lety +5

    now i see dozens of comments asking to have this released for this or that programming language and OSs, Android, Python, ...
    GUYS, MOST OF THIS IS IMPLEMENTED IN JAVA, PYTHON, C and so on, there are existing libraries. you don't have to do it yourself, he just explains the underlying mechanics in JAVA, reprogramming arrays is really not necessary. where do you think we would be if every programmer had to implement his own array types whenever they write code?

    • @dariusznedza2943
      @dariusznedza2943 Před 4 lety

      Maybe it's easier to understand in, let's say, the Python or the Ruby. If you are not a Java Programmer (or at least know something about it) then there's lot of noises.

  • @dariuswessehkaph4613
    @dariuswessehkaph4613 Před 4 lety +17

    I’m a Computer Engineering student at Jingchu University of Technology and Your video is very helpful to me.. Please do you have PPT to this video ? I will actually need it..

  • @dragonceo5911
    @dragonceo5911 Před rokem +1

    Thank you. Twitter and Meta my dream companies this will be useful.

  • @guillaume6373
    @guillaume6373 Před 3 lety +2

    This is god-tier educational material

  • @akshayakki8969
    @akshayakki8969 Před 5 lety +237

    Why did you delete this! Which was uploaded 2 days back😢
    Anyway thanks for uploading again
    Please don't delete

    • @freecodecamp
      @freecodecamp  Před 5 lety +270

      We had to edit out a copyrighted song.

    • @akshayakki8969
      @akshayakki8969 Před 5 lety +26

      Oh I see
      Thanks for uploading and replying FCC😉

    • @sarveshhiwase193
      @sarveshhiwase193 Před 5 lety

      Bro download it you will have no problem

    • @Jianju69
      @Jianju69 Před 5 lety +3

      Right? I was all excited to watch it... & it was gone. :-0

    • @miosz952
      @miosz952 Před 3 lety

      @@sarveshhiwase193 Downloading 8 hours of video is pretty much to store

  • @sushantkunkekar2155
    @sushantkunkekar2155 Před 5 lety +10

    Thanks you so much...eagarly waiting for this..

  • @davidm.johnston8994
    @davidm.johnston8994 Před 4 lety +9

    This is the most interesting content I've watched in my whole life. Thank you so much!

  • @sashamuller9743
    @sashamuller9743 Před 4 lety +2

    aight i'll be binging this video for the next couple of days

  • @pawan2647
    @pawan2647 Před 4 lety +12

    William Thank You So Much for this lecture, I am so in love with this, so beautifully explained !!!

    • @TheBoredandCool
      @TheBoredandCool Před 3 lety

      GeeksforGeeks is organising mini course of DSA that you should not miss out.
      Why??
      1. Live QnA sessions, you can clear all doubts related to DSA. Any doubt from LinkedList to Graph.
      2. You will get practice problems after every Data structure to make you good at DSA and crystal clear concepts.
      3. After completion of course you will get certificate and can access course anytime.
      4. Its FREE!!! But only if you use the below code -
      GFGD4Y2JR
      Register here-
      practice.geeksforgeeks.org/courses/Workshop-DSA?loginMode=308

  • @alekseilitvinau
    @alekseilitvinau Před 4 lety +4

    5:50:35 Fenwick Trees -> Examples on LSP: Rightmost bit is LSP. Not the leftmost. Spent quite some time on trying to find this mistake.
    btw. Thanks a lot! It is a wonderful videos and examples!)

    • @kingevaluation1794
      @kingevaluation1794 Před 4 lety

      Can I ask for this video?
      Is this course based on C ? or C++ or other language?
      What kind of language is used for this course?

  • @IthaliiJackson
    @IthaliiJackson Před 2 lety +6

    Quite useful. Great content delivered in the best way ever. much appreciated.

  • @LarryP248
    @LarryP248 Před 9 měsíci +1

    The caliber of this content is striking. A book I read with akin content became a turning point. "Game Theory and the Pursuit of Algorithmic Fairness" by Jack Frostwell

  • @yusuphally5201
    @yusuphally5201 Před 5 lety +4

    Thank you.. You are truly savior..

  • @tkingless
    @tkingless Před 9 měsíci +4

    謝謝!

  • @droneacharya6057
    @droneacharya6057 Před 2 lety +1

    finally finished watching this video after 4 days with distracted mind. am not sure if i got everything taught here since, i more like skimmed the whole video. but am sure that i learnt some and now i have idea of what DS is. Awesome tutorial BTW.
    will revisit after few weeks and gonna learn this again and again until it sticks.

  • @vansf3433
    @vansf3433 Před 2 lety +1

    This cource can be considered as being advanced only to purer prgtammers, but merely one of pre-beginning steps into studying software architecture in CS

  • @NathanStraub92
    @NathanStraub92 Před 4 lety +12

    Took me a month, but I finally finished! Priority Queues and Hash Tables are probably the most applicable to my music teaching business. Thank you so much!!

    • @ayarammal1213
      @ayarammal1213 Před 2 lety +2

      i am interested! how are you using code for music? It is something i want to pursue but dont quite know how it goes.

  • @HappyKatze
    @HappyKatze Před 4 lety +19

    5:26:59 That tombstone is brilliant

  • @anilkumarjha8055
    @anilkumarjha8055 Před 4 lety +1

    Sir you are great iam following you on skillz cafe

  • @klarnorbert
    @klarnorbert Před 3 lety +1

    Doubly linked list doesn't take up 2x memory. Every node need one more pointer(in case of C or C++) to the previous node. That's it.

  • @hassanjaber8169
    @hassanjaber8169 Před 4 lety +517

    I mean an Ad or 2 wouldn't hurt :(

    • @randalthor647
      @randalthor647 Před 4 lety +101

      Yess the amount of effort they gives I will gladly watch some ads

    • @cannonbolt2595
      @cannonbolt2595 Před 4 lety +4

      @@randalthor647 which language is taught in this video for data structures ?

    • @harpreetjanday1660
      @harpreetjanday1660 Před 4 lety +4

      @@cannonbolt2595 java

    • @rs95Opbr
      @rs95Opbr Před 4 lety +5

      @@harpreetjanday1660 i have no idea of Java but have c/c++/python...can i get this Video

    • @videepsingh2709
      @videepsingh2709 Před 4 lety +1

      @@randalthor647 lmao true

  • @aliasgar.burhani1099
    @aliasgar.burhani1099 Před 3 lety +8

    Now I think Free youtube is better than paid colleges

    • @TheBoredandCool
      @TheBoredandCool Před 3 lety

      GeeksforGeeks is organising mini course of DSA that you should not miss out.
      Why??
      1. Live QnA sessions, you can clear all doubts related to DSA. Any doubt from LinkedList to Graph.
      2. You will get practice problems after every Data structure to make you good at DSA and crystal clear concepts.
      3. After completion of course you will get certificate and can access course anytime.
      4. Its FREE!!! But only if you use the below code -
      GFGD4Y2JR
      Register here-
      practice.geeksforgeeks.org/courses/Workshop-DSA?loginMode=308

  • @anamabbasi_15
    @anamabbasi_15 Před 4 lety

    please don't dislike this video because this video contains more information which is about to 8 hours work.. I don't know why people dislike these type of informational videos..

  • @nehruprasad854
    @nehruprasad854 Před 4 lety

    your the only one person who are given knowledge and clarity well

  • @hhuseynli
    @hhuseynli Před 4 lety +6

    In what speed should you watch the video for your English level:
    New : 1
    Experienced: 1.25
    Mother language: 1.5

  • @JMRC
    @JMRC Před 4 lety +29

    The `clear` method of the Array class at 30:12 goes all the way through capacity, but length would be enough since everything between length and capacity is undefined anyway, right? Enjoying the video though. Still 7 hours to go.

  • @ijk9268
    @ijk9268 Před rokem +2

    Stack / Queue
    -------------------------
    ⌨ (0:58:26) Stack Introduction
    ⌨ (1:09:40) Stack Implementation
    ⌨ (1:12:49) Stack Code
    ⌨ (1:15:58) Queue Introduction
    ⌨ (1:22:03) Queue Implementation
    ⌨ (1:27:26) Queue Code
    ⌨ (1:31:32) Priority Queue Introduction
    ⌨ (1:44:16) Priority Queue Min Heaps and Max Heaps
    ⌨ (1:49:55) Priority Queue Inserting Elements
    ⌨ (1:59:27) Priority Queue Removing Elements
    ⌨ (2:13:00) Priority Queue Code

  • @ishikapatel3318
    @ishikapatel3318 Před 7 měsíci +1

    Finally finished it. Thank you

  • @parasprakash985
    @parasprakash985 Před 4 lety +2

    Thanks a lot for this upload. The title is justified.

  • @Sds518
    @Sds518 Před 4 lety +12

    4:48:23
    b is obsolete because it is our value that we are incrementing every linear cycle in our attempt to find the next open key on the hash table.
    Discuss ⬇️⬇️⬇️

  • @GunamaniJena
    @GunamaniJena Před 3 lety

    it is excellent for ug pg students and faculty I recommend to all code lovinf students of the world

  • @hiroooo2177
    @hiroooo2177 Před 2 lety +1

    すごい勉強になります

  • @MegaPranav99
    @MegaPranav99 Před 4 lety +49

    i feel like i should be paying for this!

    • @abacas2175
      @abacas2175 Před 3 lety

      Yes u are paying ur time for this 😇