Тёмный

CS50x 2024 - Lecture 5 - Data Structures 

CS50
Подписаться 1,9 млн
Просмотров 220 тыс.
50% 1

***
This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming.
***
TABLE OF CONTENTS
00:00:00 - Introduction
00:01:01 - Stacks and Queues
00:09:53 - Jack Learns the Facts
00:12:01 - Resizing Arrays
00:30:33 - Linked Lists
01:16:09 - Trees
01:30:34 - Dictionaries
01:34:26 - Hashing and Hash Tables
01:52:36 - Tries
***
HOW TO SUBSCRIBE
ru-vid.com_c...
HOW TO TAKE CS50
edX: cs50.edx.org/
Harvard Extension School: cs50.harvard.edu/extension
Harvard Summer School: cs50.harvard.edu/summer
OpenCourseWare: cs50.harvard.edu/x
HOW TO JOIN CS50 COMMUNITIES
Discord: / discord
Ed: cs50.harvard.edu/x/ed
Facebook Group: / cs50
Faceboook Page: / cs50
GitHub: github.com/cs50
Gitter: gitter.im/cs50/x
Instagram: / cs50
LinkedIn Group: / 7437240
LinkedIn Page: / cs50
Medium: / cs50
Quora: www.quora.com/topic/CS50
Reddit: / cs50
Slack: cs50.edx.org/slack
Snapchat: / cs50
SoundCloud: / cs50
Stack Exchange: cs50.stackexchange.com/
TikTok: / cs50
Twitter: / cs50
RU-vid: / cs50
HOW TO FOLLOW DAVID J. MALAN
Facebook: / dmalan
GitHub: github.com/dmalan
Instagram: / davidjmalan
LinkedIn: / malan
Quora: www.quora.com/profile/David-J...
TikTok: / davidjmalan
Twitter: / davidjmalan
***
CS50 SHOP
cs50.harvardshop.com/
***
LICENSE
CC BY-NC-SA 4.0
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License
creativecommons.org/licenses/...
David J. Malan
cs.harvard.edu/malan
malan@harvard.edu

Опубликовано:

 

31 май 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 103   
@oskartrinh6001
@oskartrinh6001 Месяц назад
Just finished watching lecture 5. Now it's time to watch it again like 3 more times. :D
@hezziacGames
@hezziacGames 2 дня назад
Not too watch it for the 2nd time in a second 😂
@wsollers1
@wsollers1 3 месяца назад
As a seasoned developer, I use these videos to augment my son's curriculum. This is invaluable knowledge laid out in a clear and compelling way.
@Rodrigo_Pimenta
@Rodrigo_Pimenta Месяц назад
Can you elaborate? Why is it valuable to say on your curriculum that you whached the CS50 online course?
@ousseynoukone
@ousseynoukone Месяц назад
​@@Rodrigo_Pimenta You'll receive a certificate at the end... A certificate that carries significant weight. CS50 is one of the top online courses for an introduction to CS.
@anshuraj4277
@anshuraj4277 25 дней назад
Is there any Python DSA course U can recommend
@pavan7335
@pavan7335 3 месяца назад
Intro music is a banger!!! Whoever composed it, hatsoff!
@parthdeshwal4419
@parthdeshwal4419 Месяц назад
indeed
@shinthantkaung
@shinthantkaung Месяц назад
I luv it
@evachen4709
@evachen4709 4 месяца назад
I've watched CS50 2023 to get started with some concepts of CS and now cmoe back to 2024 from time to time to see David explainging some specifiec concepts when I bump into them when solving problems. Really honored to have David, CS50 series and the team. Many thanks.
@anasanas7842
@anasanas7842 5 месяцев назад
"I have no idea what im studying" lol
@sahil-anurag
@sahil-anurag 4 месяца назад
yeah! i have noticed. lol😂😂
@Aman-fz1ew
@Aman-fz1ew 4 месяца назад
Top quality demonstration .
@Shawky.
@Shawky. 5 месяцев назад
Happy New Year and all the best for 2024 ! Happy Coding 😃
@blessdarah1256
@blessdarah1256 3 месяца назад
This was such a wondeful course. Well put and in very simple terms. If you already have a descent understanding of DSA and some C, it's going to be flawlessly easy to pull through the course.
@aftertwentea
@aftertwentea 5 месяцев назад
This is it, the stumbling stone of CS50🎉🎉🎉
@villagerdude2989
@villagerdude2989 3 месяца назад
Fr 💀
@bassycounter
@bassycounter 2 месяца назад
What exactly do you mean by “stumbling”
@misterguy
@misterguy 2 месяца назад
@@villagerdude2989all I see is everyone loves these lectures
@lintz_lin
@lintz_lin 22 дня назад
@@bassycounter Late answer here but I think it's because this is one of the hardest part of the CS50 course, if you get past this block then you'll be very likely to finish the whole course. Some people unfortunately give up at week 4 or week 5.
@bassycounter
@bassycounter 22 дня назад
@@lintz_lin oh okay, makes sense. I find it very interesting and refuse to give up until I finish, just turned in week 9 and about start final project once i get everything properly setup locally. Wishing the best of luck and good vibes to everybody else!
@sefonefinpsefnpefn4191
@sefonefinpsefnpefn4191 3 месяца назад
finally finish this video! keep going guys!
@sultanghani7356
@sultanghani7356 Месяц назад
This man is doing more work than the hardwares.
@omowomaroland1880
@omowomaroland1880 3 месяца назад
Truly very simplified approach
@abdullah.astro1
@abdullah.astro1 3 месяца назад
شكرا ديفيد واخيرا خلصت الاسبوع الطويل هذا وبالتوفيق للجميع
@johnmayfield7662
@johnmayfield7662 Месяц назад
I loved the balloons explanation Mr. David
@DTALKS01
@DTALKS01 Месяц назад
Amazing explanation of hash table
@andoryu14
@andoryu14 Месяц назад
I recall people saying week 3 or 4 were the hardest, but this week has really deflated my sails and I'm not even at the pset yet
@nanoalt8127
@nanoalt8127 Месяц назад
this one is giving me a headache trying to understand pointer arithmetic. I now see why people call C an archaic language if you're new
@bassycounter
@bassycounter 22 дня назад
Yall got this!! Just keep watching lectures and sessions and read the notes if needed.
@andoryu14
@andoryu14 15 дней назад
Update: finally submitted the final week 5 problem more than a month later. Hardest week so far for me by a lot, but getting this far has taken me 9 months to do 5 weeks of problems. Don't give up!
@bassycounter
@bassycounter 15 дней назад
@@andoryu14 Well done! Speller was certainly a tricky one, I’m not even sure if I’d be able to easily redo it if I were to try it again, but to be fair, a lot of these problem sets are really hard to FULLY digest within only a week, they’re mostly just things you get better at by repeating over time to get more comfortable with. Just a few more weeks to go! The stuff with Python is a breath of fresh air, I just got to the final project about a week ago, still haven’t made much progress with it if I’m being honest since everything is coming from scratch and I’m having trouble with planning out how I want everything to look and work, but I think you’ll like the next few weeks, especially the week with SQL, that was a fun problem set.
@vwhxss-390
@vwhxss-390 15 дней назад
​@@andoryu14 Cool bro I just finished week 4, wish me luck
@fest8177
@fest8177 5 месяцев назад
We’re back again with this hellish week 😂
@fbiagent6081
@fbiagent6081 3 месяца назад
Where was this when i needed it 😭
@WizeChoice
@WizeChoice 2 месяца назад
So Amazing 👉🏾✨✨✨
@philippwiederkehr7262
@philippwiederkehr7262 Месяц назад
I liked the balloons demonstration!
@user-gc9sp7bx5z
@user-gc9sp7bx5z 4 месяца назад
Dave has done more than 90% of profs out there. respect.
@cybrd230
@cybrd230 5 месяцев назад
It suddenly started making a lot more sense.
@kuldeeppal7229
@kuldeeppal7229 27 дней назад
Today is my exam, wish me luck 🤞
@aasrp661
@aasrp661 16 дней назад
Yes bro good good exams. 😎
@huropjohe2922
@huropjohe2922 18 дней назад
1:15:00, I think if node's number is equal, '=' can be add at line62 or line41.
@thankyouthankyou1172
@thankyouthankyou1172 4 месяца назад
I like how well the lecture was prepared: handing out cookies to demo FIFO
@akarshsahay4381
@akarshsahay4381 День назад
i had a ques at 1:04:25 , when u entered at the terminal 1 2 3, you are also entering spacebars ( ) which cant be converted to integers, so why no error?
@born2fight77
@born2fight77 3 месяца назад
hi, at the time line 27.57, do we need to free temp also,, line no 29-free(list); ,line no 30- list = tmp; here list has been assigned with tmp, line 31- as per my thoughts - free(tmp);
@ItsMidNightDev
@ItsMidNightDev Месяц назад
I believe at that point 'list' now points to the memory that was allocated to 'tmp', as he set 'list = tmp' on line 30, so 'free(list)' on line 37 is basically free-ing the memory that was once allocated to tmp. I'm still learning this myself so if that's incorrect please correct me :)
@xahonmanalocon7405
@xahonmanalocon7405 6 дней назад
oh my goodness, i find this part so difficult. i have to rewatch weeks 4 and 5.
@antonioskokiantonis7051
@antonioskokiantonis7051 4 месяца назад
Ok, thank you C, we're moving to your modern child, Python!
@ProgrammerPenguin
@ProgrammerPenguin Месяц назад
lmao!
@Vhc706
@Vhc706 2 месяца назад
Raise your hand if you choked up on linked lists 🤚
@huropjohe2922
@huropjohe2922 18 дней назад
1:21:27 英文字幕裡的[INAUDIBLE],因該是mario,馬力歐,前幾堂課舉的例子。
@DebopriyoBasu
@DebopriyoBasu 4 месяца назад
Thank you for sharing this online. Time to fix my knowledge gaps.
@AudisioOficiaI
@AudisioOficiaI 4 месяца назад
how are you verified???
@ProgrammerPenguin
@ProgrammerPenguin Месяц назад
why are you verified?
@budiardjo6610
@budiardjo6610 2 месяца назад
i am glad he is using c language
@efei_
@efei_ 5 месяцев назад
Nice
@AhamdMQ
@AhamdMQ 23 дня назад
what if we have more than one person with the same name when we're using Tries?
@alainrouleau
@alainrouleau 13 дней назад
This is ALL pretty crazy in terms of low-level languages like C. And makes you wonder how anything actually got accomplished in the good old days. They no doubt wasted a lot of time on just simple stuff. The equivalent would be of someone wanting to go to the grocery store. But wait... Oh ya, that's right, first I have to build the car, LOL Thank god for high-level languages.
@asrarlone8660
@asrarlone8660 Месяц назад
is it full dsa course
@jerrypro9454
@jerrypro9454 Месяц назад
57:50 Is it just me or atoi function was never introduced before in the lecture?
@paiksprod8358
@paiksprod8358 Месяц назад
Atoi was introduced in problem sets, probably in week 3 as i remember because i used it myself before week 5. In general problem sets requires sometimes more than just watching the lecture
@oteikwufrancis1108
@oteikwufrancis1108 4 месяца назад
A simple question dear sir. It seems, once cursor->next is converted from NULL to n we loose the pointer to NULL. So how do we set the last element in this list to point at NULL? Me thinks the pointers if a node is created without assigning it a pointer, the pointer is implicitly set to NULL. Am I right?
@poggybitz513
@poggybitz513 4 месяца назад
No. It could be set to garbage value. You need to explicitly set the pointer to NULL.
@oteikwufrancis1108
@oteikwufrancis1108 4 месяца назад
Thank you sir @poggybitz513 . It seems that wasn't done in the code we were given.
@wanderingfido
@wanderingfido 3 месяца назад
8:02 It's misleading to use method names _push_ and _pop_ because those are the typical functions for an array. During which the more cpu-intensive operations of shrinking and expanding the physical size/length of an array is committed. The _get()_ and _put()_ methods more accurately imply that cells/elements within the queue are _overwritten_ or non-destructively _read_ as per index values updated within _head_ and _tail_ integer variables. While the size/length of the array remains fixed according to a _CAPACITY_ value.
@Nanagos
@Nanagos 4 месяца назад
I didn't even notice until now, that David Malan is wearing the same thing all the time 😅
@aidanthompson5053
@aidanthompson5053 3 месяца назад
1:14:22
@bikashtamang9756
@bikashtamang9756 Месяц назад
even tough he is explainging in such a goood way don't know why i am not able to understand it
@King_504
@King_504 23 дня назад
I think he's a tad bit too animated. gotta weed through his fluff to get to the actual message he's trying to convey
@CptSamel
@CptSamel 9 дней назад
This dude is still losing sleep over how the balloon demonstration went but to me it seemed to go just fine 🤷‍♂
@80greaty
@80greaty 3 месяца назад
He earned my respect when he pronounced valgrind "val grinned"
@IHateMondaysToo
@IHateMondaysToo 16 дней назад
makes me think of norse mythology
@aidanthompson5053
@aidanthompson5053 3 месяца назад
1:37:25
@emilsjoblom273
@emilsjoblom273 2 месяца назад
what do you mean?
@ProgrammerPenguin
@ProgrammerPenguin Месяц назад
@@emilsjoblom273 comments appear top for the commentators so its prolly a note comment for later.
@syedzainulabideen4455
@syedzainulabideen4455 5 месяцев назад
1like = 5pushups in 2024
@theXsun
@theXsun 21 день назад
You say that on every lecture
@mohamedibrahim1836
@mohamedibrahim1836 4 месяца назад
First of all great efforts and brilliant content! That said, I am always fascinated with how educators can make simple concepts sound like they are talking statistical mechanics or some sophisticated topic! I am not sure if the impact is to keep students alerted or the average students will be thinking ooh this is so sophisticated and result in anxiety! not sure! but what I am sure of is that these are pretty average logical informational topics like most of computer science subjects and they don't require all this excitation!
@phonixMAM
@phonixMAM 2 месяца назад
they dont if youre chatgpt
@svengoerdes1705
@svengoerdes1705 Месяц назад
Well in my opinion this excitement and playfull approach is one of the best ways to keep the students concentrated and interested. Excitement is not required but it makes the lecture so much more interesting. You could say the same thing about every subject in school. Compared to your knowledge almost everything is "average". However, it is not to the students! So please rethink your opinion and try to avoid calling information "average".
@shinthantkaung
@shinthantkaung 23 дня назад
@IRONMAN-to7yl
@IRONMAN-to7yl 4 месяца назад
38:06
@MooseGoWoof
@MooseGoWoof 5 месяцев назад
Anyone else watching at 2 times speed?
@Aman-fz1ew
@Aman-fz1ew 4 месяца назад
Nope
@bekay7663
@bekay7663 3 месяца назад
I get distracted if not lol
@bekay7663
@bekay7663 3 месяца назад
​@@Aman-fz1ewyep
@aliakseivasiukovich8244
@aliakseivasiukovich8244 Месяц назад
How much money did Nintendo pay for the commercial? Almost every lesson mentions Nintendo characters. The course is great, though. Just my observation
@ProgrammerPenguin
@ProgrammerPenguin Месяц назад
no, it's just an example to better connect with the students as said by professor David himself, he also uses characters like binky and oscar the grouch!
@DarkDevilVaqif
@DarkDevilVaqif 2 месяца назад
why is he adopting and putting kids up for adoption
@user-ut4zh3pw7l
@user-ut4zh3pw7l 3 месяца назад
overengineered sorry bs
@einfacherkerl3279
@einfacherkerl3279 3 месяца назад
I don't know why he had so much drama instead of the actual knowledge. He spent good 35 minutes distributing cookies while barely discussing stack and queue. Time thoroughly wasted
@saqib7685
@saqib7685 20 дней назад
Because it doesn't make us feel bored.
@andrean40
@andrean40 9 дней назад
Go watch any boring lecture then, no one dragged u here
@romievthedon
@romievthedon 3 месяца назад
You never freed tmp, via free(tmp), 29:00. I want my cookies😂
@nitinkashyap2619
@nitinkashyap2619 2 месяца назад
he mistakely free(list) again inside free(temp)
@cklai350
@cklai350 Месяц назад
list and tmp here are pointing at the same chunk of memory. Thus, you should not free it again.
@romievthedon
@romievthedon Месяц назад
@@cklai350 Ahhhhh, okay. Thanks for the clarification😅 I still have yet to toy around with C. I've dabble with C++ for unreal engine but that's about it. I expect to use C officially when I start working with embedded systems in the next couple of weeks.
@aidanthompson5053
@aidanthompson5053 3 месяца назад
36:57
@anasanas7842
@anasanas7842 5 месяцев назад
1:39:40 1:41:45 1:43:32
@charlesabju907
@charlesabju907 4 месяца назад
I wonder what he actually said in the live class instead of Lakitu
@angiehidalgo5190
@angiehidalgo5190 2 месяца назад
@@charlesabju907 I NEED ANSWERS