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

Поделиться
HTML-код
  • Опубликовано: 31 янв 2025

Комментарии • 2,1 тыс.

  • @freecodecamp
    @freecodecamp  4 года назад +714

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

  • @ramon9789
    @ramon9789 4 года назад +2770

    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 4 года назад +1714

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

    • @divyareddy7622
      @divyareddy7622 3 года назад +6

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

    • @CrusaderofChrist2
      @CrusaderofChrist2 3 года назад +11

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

    • @tyrpert
      @tyrpert 3 года назад +1

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

    • @h.kubilay6160
      @h.kubilay6160 3 года назад +12

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

    • @istaahify
      @istaahify 3 года назад +13

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

  • @rgpbando
    @rgpbando 4 года назад +806

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

    • @horccruxxxop4184
      @horccruxxxop4184 4 года назад +4

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

    • @alok2656
      @alok2656 4 года назад +21

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

    • @dr_davinci
      @dr_davinci 3 года назад +9

      @@horccruxxxop4184 It sits between them.

    • @adyan4010
      @adyan4010 3 года назад +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 3 года назад +2

      @@adyan4010 ok ok

  • @sricharansingam8302
    @sricharansingam8302 3 года назад +464

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

    • @scurvofpcp
      @scurvofpcp 2 года назад +9

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

  • @alihelbah8798
    @alihelbah8798 2 года назад +195

    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.

  • @jacobp6891
    @jacobp6891 4 года назад +66

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

  • @hitec1691
    @hitec1691 4 года назад +241

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

    • @Sk8erMorris
      @Sk8erMorris 4 года назад

      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

  • @nakshatranahar
    @nakshatranahar 5 лет назад +2419

    ⌨️ (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

  • @agustinvis5720
    @agustinvis5720 4 года назад +18

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

  • @toughchic6377
    @toughchic6377 4 года назад +43

    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 4 года назад

      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 2 года назад

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

    • @toughchic6377
      @toughchic6377 2 года назад +4

      @@NSHEIKHSAIRABANU English

    • @NSHEIKHSAIRABANU
      @NSHEIKHSAIRABANU 2 года назад

      @@toughchic6377 not that programing language

    • @toughchic6377
      @toughchic6377 2 года назад +3

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

  • @pranavpatil131
    @pranavpatil131 5 лет назад +307

    This Channel is A Gold Mine 🔝🔝

  • @shortssquad1
    @shortssquad1 5 лет назад +443

    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 5 лет назад +5

      Same here

    • @ayyubayyyub9415
      @ayyubayyyub9415 5 лет назад +12

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

    • @Gold_fi
      @Gold_fi 5 лет назад +2

      Same here too

    • @shortssquad1
      @shortssquad1 5 лет назад +3

      @@ayyubayyyub9415 Thank you brother. Same to you.

    • @jayeshghadiali1682
      @jayeshghadiali1682 5 лет назад +6

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

  • @aditijoshihehe65
    @aditijoshihehe65 5 лет назад +80

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

  • @gabrielrfg4852
    @gabrielrfg4852 3 года назад +27

    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 3 года назад +1

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

  • @huszartony4362
    @huszartony4362 5 лет назад +26

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

    • @TheBoredandCool
      @TheBoredandCool 4 года назад

      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

  • @taylorbrennan2832
    @taylorbrennan2832 4 года назад +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 3 года назад +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 3 года назад +3

      @Vikas Garg this video used Java

    • @vikasgarg2035
      @vikasgarg2035 3 года назад +3

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

  • @jainzy158
    @jainzy158 2 года назад +14

    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 Год назад

      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?

  • @viniciuscastro4281
    @viniciuscastro4281 4 года назад +35

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

    • @oabouassy
      @oabouassy 4 года назад +1

      You can recommend a better course for DS ?

    • @xynyde0
      @xynyde0 3 года назад +1

      @@oabouassy CLRS

    • @oabouassy
      @oabouassy 3 года назад

      @@xynyde0do you mean intro to Algo book ?

  • @tausifulrahman
    @tausifulrahman 3 года назад +23

    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.

  • @stephenpino235
    @stephenpino235 5 лет назад +23

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

  • @luiscenteno8118
    @luiscenteno8118 5 лет назад +83

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

    • @niall4196
      @niall4196 4 года назад +9

      good stuff luis hope your doing alright

  • @yahyafati
    @yahyafati 4 года назад +125

    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 4 года назад +7

      Btw it took me a month to finish this video.

    • @famoxyzfamoxyz7027
      @famoxyzfamoxyz7027 2 года назад +1

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

    • @naveenk2524
      @naveenk2524 2 года назад +1

      @@yahyafati nice

    • @vishverma9899968908
      @vishverma9899968908 Год назад

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

  • @vinayakkrishnaprasad358
    @vinayakkrishnaprasad358 3 года назад +1

    Thanks!

  • @OmegaFalcon
    @OmegaFalcon 5 лет назад +12

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

  • @stannone7272
    @stannone7272 3 года назад +3

    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.

  • @samCoder
    @samCoder 4 года назад +48

    ⭐️ 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 3 года назад +3

      why did you copy the other guy's comment

    • @sanskarswaraj6702
      @sanskarswaraj6702 3 года назад +5

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

    • @framepointer
      @framepointer 3 года назад +2

      @@sanskarswaraj6702 copyception

  • @mohamedtalal4468
    @mohamedtalal4468 6 месяцев назад +1

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

  • @jagnibha2021
    @jagnibha2021 Год назад +2

    02-09-2023 START
    17:00
    27:40
    49:20
    1:22:00
    1:44:14
    2:13:01(forgot to add previously)
    3:03:54
    3:21:19
    3:51:20(Again Forgot to add)
    4:24:09
    4:48:36
    5:23:56
    5:57:30
    6:17:48
    6:30:51
    COMPLETED

  • @delarosae
    @delarosae 4 года назад +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!

  • @rizzlybear929
    @rizzlybear929 5 лет назад +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 ;)

  • @mariedrapalova7365
    @mariedrapalova7365 3 года назад +125

    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 :).

  • @Indiancompatriots
    @Indiancompatriots 9 месяцев назад +1

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

  • @abrorbekismoilov5496
    @abrorbekismoilov5496 3 месяца назад +1

    If you have a genuine interest in what you do/learn, you describe everything related to that field as awesome, important, and interesting. Watching your enthusiasm alone does motivate many.

  • @Ankushdas2001
    @Ankushdas2001 4 года назад +16

    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 4 года назад +4

      did u watch today 😠😠😠

    • @Ankushdas2001
      @Ankushdas2001 4 года назад +1

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

    • @aadichauhan947
      @aadichauhan947 4 года назад +1

      @@Ankushdas2001 nice 😎

    • @ProGamerSergiu
      @ProGamerSergiu 4 года назад +4

      Bro stay on the video don’t slack !

    • @jinjikisano179
      @jinjikisano179 4 года назад +3

      Just a friendly reminder for you to study

  • @peternaveen1832
    @peternaveen1832 4 года назад +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..

  • @Sgoose105
    @Sgoose105 5 лет назад +8711

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

    • @aniketshukla540
      @aniketshukla540 5 лет назад +1299

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

    • @agent000000008
      @agent000000008 5 лет назад +333

      Payton Zhong i would say 2x is still
      Too slow

    • @Sgoose105
      @Sgoose105 5 лет назад +310

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

    • @lordx4641
      @lordx4641 5 лет назад +56

      @@Sgoose105 yes in order to explain

    • @bhagavan_ganesul
      @bhagavan_ganesul 5 лет назад +27

      @@agent000000008 You must be an alien...

  • @dramese
    @dramese 4 года назад +2

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

  • @TV_accountYT
    @TV_accountYT 2 года назад +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

  • @viticoinf
    @viticoinf 5 лет назад +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!

  • @lovethnwokike8210
    @lovethnwokike8210 5 лет назад +41

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

  • @simons.soa1
    @simons.soa1 Год назад +5

    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.

  • @inigohohmeyer1791
    @inigohohmeyer1791 4 года назад +1

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

  • @justinpalmer9387
    @justinpalmer9387 3 года назад +2

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

    • @shreyasn9137
      @shreyasn9137 3 года назад

      Which Programming language is used in this tutorial

    • @outofboundsbro
      @outofboundsbro 3 года назад

      @@shreyasn9137 Java

  • @SteelerY360Nation
    @SteelerY360Nation 5 лет назад +14

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

    • @seeknndestroy420
      @seeknndestroy420 4 года назад +1

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

    • @SteelerY360Nation
      @SteelerY360Nation 4 года назад +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 4 года назад +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 4 года назад

      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 4 года назад +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 :)

  • @alex86080
    @alex86080 5 лет назад +1238

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

    • @ajays6393
      @ajays6393 5 лет назад +17

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

    • @Mateus.007
      @Mateus.007 5 лет назад +2

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

    • @Mateus.007
      @Mateus.007 4 года назад +3

      Ajay S whatnever comes later.

    • @ayush4565
      @ayush4565 4 года назад +5

      So you are not going to bed

    • @adisingh9341
      @adisingh9341 4 года назад +9

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

  • @justynak.6686
    @justynak.6686 2 года назад +11

    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 2 года назад

      I think fifo is a queu and filo is a stack

    • @randomvids3686
      @randomvids3686 2 года назад +1

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

    • @justynak.6686
      @justynak.6686 2 года назад

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

    • @buihung3704
      @buihung3704 Год назад +4

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

  • @anamabbasi_15
    @anamabbasi_15 4 года назад

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

  • @bir_deb
    @bir_deb 5 лет назад +5

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

    • @Abhi-qi6wm
      @Abhi-qi6wm 3 года назад

      sus

    • @kalwardin3510
      @kalwardin3510 3 года назад

      @@NirtyDigger ding ding ding ding ding ding ding ding dididing

  • @vaibhavpatil6745
    @vaibhavpatil6745 5 лет назад +46

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

  • @ricardocambundo2527
    @ricardocambundo2527 2 года назад +7

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

    • @mehakdhamija7744
      @mehakdhamija7744 2 года назад +1

      hey, can you please tell which programming language is used in this whole video ?

    • @eliaeiroalledo9881
      @eliaeiroalledo9881 2 года назад

      @@mehakdhamija7744 it’s Java

  • @tysontman5522
    @tysontman5522 2 года назад +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.

  • @scnt
    @scnt Год назад +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!!!

  • @davidm.johnston8994
    @davidm.johnston8994 4 года назад +9

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

  • @bhargavacharan2262
    @bhargavacharan2262 4 года назад +4

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

  • @jesuyacked
    @jesuyacked 2 года назад +4

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

  • @clairechang6066
    @clairechang6066 3 года назад +2

    謝謝!

  • @guillaume6373
    @guillaume6373 3 года назад +2

    This is god-tier educational material

  • @diego.777ramos
    @diego.777ramos 5 лет назад +70

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

  • @IthaliiJackson
    @IthaliiJackson 3 года назад +6

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

  • @brentjackson6966
    @brentjackson6966 5 лет назад +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 5 лет назад

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

  • @droneacharya6057
    @droneacharya6057 2 года назад +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.

  • @alekseilitvinau
    @alekseilitvinau 5 лет назад +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 5 лет назад

      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?

  • @neerajchavan9760
    @neerajchavan9760 4 года назад +5

    The same course on Udemy cost 500rs. Thank you for providing such tutorials for free! I am definitely going to donate to you guys once I get a job.

    • @TheBoredandCool
      @TheBoredandCool 4 года назад

      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

  • @RussellSmith-nv2je
    @RussellSmith-nv2je 2 года назад +8

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

  • @nehruprasad854
    @nehruprasad854 4 года назад

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

  • @PRINCEKUMAR-tk9xx
    @PRINCEKUMAR-tk9xx Год назад

    This deserves a standing ovation🎉🎉

  • @kimjongun2228
    @kimjongun2228 4 года назад +13

    NOTES FOR REVISION 11-08-2020
    DATA STRUCTURES : The way of organizing data
    Big O : Time complexity
    Binary search is powerful algorithm i.e O(log(n)) as time complexity .
    Constants can (should) be eliminated while calculating Big O time complexity .
    STATIC ARRAY : It is n array having a fixed length from (0 , n-1)
    DYNAMIC ARRAY : An array that can grow and shrink in size
    Array has 4 important operations called Searching , Insertion , Appending (adding elements), Deletion .
    check here tomorrow from @ 28:24 (Dynamic array)
    31-08-2020 @ 49:18 to listen
    Dynamic array code - listen once again
    Linked list : these are the nodes which contain data and a has a last node as empty or null node
    has operations like insertion , deletion , searching ,

    • @alex-unofficial
      @alex-unofficial 4 года назад +2

      Come back here and continue your homework Mr. Un

    • @kimjongun2228
      @kimjongun2228 4 года назад +2

      @@alex-unofficial Came back now mate thanks for remembering me

  • @xando81
    @xando81 3 года назад +4

    @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 2 года назад

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

  • @shamy1st
    @shamy1st 4 года назад +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.

    • @S2lyaQ
      @S2lyaQ 3 года назад

      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.

  • @allegeddevil1956
    @allegeddevil1956 Год назад +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.

  • @tinyxtina_
    @tinyxtina_ 5 лет назад +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.

  • @r_u_p_d9776
    @r_u_p_d9776 5 лет назад +4

    I'm eagerly waiting for this course , need to learn it soon. And as I learned java first this is my dream course for learning data structures!!

  • @dariuswessehkaph4613
    @dariuswessehkaph4613 5 лет назад +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..

  • @kbrodeur
    @kbrodeur 10 месяцев назад

    This is a lot of info done very well I might add. 8 hours probably took a very long time to put together in this detail. Thank you for your hard work.

  • @samis6182
    @samis6182 Год назад

    (15:17) iterate 41 times (from i = 10 to j = 50 ) in each iteration of the middle loop
    answer 3n * 41 * n*3/2 * 3/2n*5 + 123n = O(n*5 )

  • @minima_listic
    @minima_listic 3 года назад +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 3 года назад

      what about arraylist,hashmap

    • @Atharva_kathiyawadi
      @Atharva_kathiyawadi 3 года назад

      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

    • @viralcasthub
      @viralcasthub 2 года назад

      Dynamic Programming matters for Product Based Companies

  • @pawan2647
    @pawan2647 5 лет назад +12

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

    • @TheBoredandCool
      @TheBoredandCool 4 года назад

      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

  • @phinehasantwi9615
    @phinehasantwi9615 5 лет назад +6

    Very practical and detailed..... thanks so much, will be waiting for the next tutorial

    • @angelicking2890
      @angelicking2890 Год назад

      you said "practical" peaked my interest. I think I will start the course then. I hate algorithms like reverse a string when I know it has no practical use as a key principle in software development is "Do Not Reinvent The Wheel". We already have functions that do that.

  • @safooraranjbaran1466
    @safooraranjbaran1466 3 года назад

    That was excellent William I'm sure my exam would be very good tomorrow. Many Many thanks

  • @spartan9266
    @spartan9266 4 года назад +2

    Salute to your selfless efforts ❤

  • @sushantkunkekar2155
    @sushantkunkekar2155 5 лет назад +10

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

  • @SarnodeepAgarwalla
    @SarnodeepAgarwalla 5 лет назад +4

    I was waiting for this series so long ...... thank you, guys ....

  • @parasprakash985
    @parasprakash985 4 года назад +2

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

  • @Gazer-x5s
    @Gazer-x5s 4 года назад +1

    these knowledges are priceless a hidden gem

  • @user-sapdev
    @user-sapdev Год назад +1

    Content in the video is good. On theory parts detailed explanation but lack of explanation in the implementation sections from beginner point of view. In the code part also has comments but missed at important logics and mentioned in easy things. English communication skills are excellent bz of that lot of words murmuring continuously. Even if play the video in 0.75 playback speed also words are getting missed. I really appreciate the efforts made by and content presented in the video.

  • @spice940
    @spice940 4 года назад +26

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

    • @07Flash11MRC
      @07Flash11MRC 4 года назад +1

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

    • @haval00
      @haval00 4 года назад

      @@07Flash11MRC post got deleted

    • @haval00
      @haval00 4 года назад

      @@07Flash11MRC sorry mate 😅

  • @AshishSharma-pm1dc
    @AshishSharma-pm1dc 5 лет назад +91

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

    • @kamilmodawski3630
      @kamilmodawski3630 5 лет назад +29

      Everything is more exciting than this garbage overpriced phone

    • @asiimwejohnson7388
      @asiimwejohnson7388 5 лет назад +3

      I agree I agree

    • @sumitsaurabh9529
      @sumitsaurabh9529 5 лет назад +1

      @@kamilmodawski3630 OMG I agree

    • @theendurance
      @theendurance 5 лет назад +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

    • @mryup6100
      @mryup6100 5 лет назад

      @@theendurance Is it a smart choice though?

  • @fabiotrucco7969
    @fabiotrucco7969 4 года назад +56

    Excelent content! One major critique though: he takes a loose time to explain graphical, intuitive and easy to learn things, which is pedagogical and correct nonetheless. But when it comes to the source code he approaches everything like easy-peasy, but its there where most explanations are needed! Also should take into account not everybody necessarily knows java that well

    • @kwaviddong7875
      @kwaviddong7875 3 года назад +10

      I was waiting for someone to bring this up. Yeah I also feel like he just shows the code and says "hey look how simple this is" and I have no idea how he got there.

    • @youshasajjad5402
      @youshasajjad5402 3 года назад +1

      @@kwaviddong7875 so true ... i started watching his video from start once again but with better understanding of java and basics
      data structures

    • @joshuwa.jeremiah229
      @joshuwa.jeremiah229 2 года назад +1

      @@kwaviddong7875 You may want to start with their video, tittled “Introduction to Coding and Computer Science” before hopping into data structures

    • @224_meetaliverma3
      @224_meetaliverma3 2 года назад

      wanted to say the same actually

  • @arjunjoshi6519
    @arjunjoshi6519 3 года назад

    Thanks

  • @Sds518
    @Sds518 4 года назад +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 ⬇️⬇️⬇️

  • @akshayakki8969
    @akshayakki8969 5 лет назад +237

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

    • @freecodecamp
      @freecodecamp  5 лет назад +272

      We had to edit out a copyrighted song.

    • @akshayakki8969
      @akshayakki8969 5 лет назад +26

      Oh I see
      Thanks for uploading and replying FCC😉

    • @sarveshhiwase193
      @sarveshhiwase193 5 лет назад

      Bro download it you will have no problem

    • @Jianju69
      @Jianju69 5 лет назад +3

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

    • @miosz952
      @miosz952 4 года назад

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

  • @yusuphally5201
    @yusuphally5201 5 лет назад +4

    Thank you.. You are truly savior..

  • @grapy83
    @grapy83 4 года назад

    FreeCC I just want to say thank you for all the great stuff you keep putting. I can't appreciate you enough. You are awesome.

    • @TheBoredandCool
      @TheBoredandCool 4 года назад

      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

  • @meditateandrelaxstudio7251
    @meditateandrelaxstudio7251 2 года назад

    Great tutorial, better than paid courses. Appreciate your efforts.

  • @AbhishekGupta-kn3cz
    @AbhishekGupta-kn3cz 8 месяцев назад +28

    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 6 месяцев назад

      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 6 месяцев назад +2

      @@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 6 месяцев назад

      @@AbhishekGupta-kn3cz thanks ✨✨

    • @antooooo130
      @antooooo130 3 месяца назад +1

      @@AbhishekGupta-kn3czwhere can i get that sheet of questions?

    • @AbhishekGupta-kn3cz
      @AbhishekGupta-kn3cz 3 месяца назад

      @@antooooo130 buddy i had earlier replied with the sheet link, but i guess the channel auditor is removing them. reply your email will send you the sheet. Post that you can remove your email.

  • @stabbler
    @stabbler 5 лет назад +4

    How can someone dislike this? tsk tsk.. Thanks freecodecamp !

  • @JMRC
    @JMRC 5 лет назад +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.

  • @eugenefritz6669
    @eugenefritz6669 2 года назад

    Maaaan the best teacher, the best teacher ever!!!! Simply sublime

  • @iloveeverything2985
    @iloveeverything2985 5 лет назад +32

    Nobody:
    William Fiset: This data structure is my absolute favorite in the whole world
    Me: This is my favorite teacher