TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Common Data Structures Explained with Videos and Exercises

156 pointsby quincylaalmost 8 years ago

6 comments

songzmealmost 8 years ago
From my experience working with people learning programming, many students have a fear of linked list and trees. They buy coding books and practice problem sets about linked list and trees.<p>Little do they know (a few years down the road), most of them will get work experience and complain that nobody uses linked list and trees. Heck, when a problem presents itself where linked list might be a great solution, they probably won&#x27;t think to use it.<p>I think that this system of constantly bringing up linked lists, stacks, and queues for data structure is broken. A better format for teaching data structures would be to train the student&#x27;s ability to come up with the right data structure for the problem they are solving. The ability to come up with solutions specific to a problem is the real skill and this skill will empower engineers come up with stacks, queues, linked lists when they need it.<p>Here&#x27;s how I would teach data structures:<p>Ask student: 1. Let&#x27;s say you want to build an elevator system. What classes would you need, and what properties &#x2F; methods would each of them have?<p>2. You need to build a restaurant game. What classes would you need, and what properties &#x2F; methods would each of them have?<p>+ a list of many other questions<p>Follow up to each of these questions would be for students to implement their data structures with provided assets to see their implementation come to life. Throw in firebase (realtime db) so students can interact with each other&#x27;s games helps them see flaws in their implementation &#x2F; data structure design. Its a great data structure + application development practice.
评论 #14731699 未加载
评论 #14732298 未加载
Waterluvianalmost 8 years ago
I think that understanding how common data structures are implemented is a worthy endeavour to understanding the foundations of your craft. There will also be a (very small?) subset of developers who really <i>need</i> to understand them well because performance and optimization is their everyday job.<p>But I get very frustrated whenever I see an argument for learning them like this one: &quot;...knowing how to implement these data structures will give you a huge edge in your developer job search...&quot;<p>This is what makes me worried&#x2F;frustrated about the prospect of interviewing for a future software engineering job: the worry that they&#x27;ll ask me programming trivia and miss the point that I&#x27;m kick-ass at my job and bring great bottom-line value to the company I work at.<p>On another note, I was playing Human Resource Machine recently and on one puzzle I said to myself, &quot;this is a linked list!&quot; having learned about it from an MIT lecture I watched at bedtime months before. Very satisfying nerd-validation.
评论 #14731006 未加载
buckbovaalmost 8 years ago
<a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;playlist?list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;playlist?list=PL2_aWCzGMAwI3W_JlcBbtYT...</a><p>Some more decent data structure vids.
sshankyalmost 8 years ago
&quot;This embedded content is from a site that does not comply with the Do Not Track (DNT) setting now enabled on your browser.<p>Please note, if you click through and view it anyway, you may be tracked by the website hosting the embed.&quot;
sgt101almost 8 years ago
I have to share, I&#x27;ve had a long day. I read the headline and clicked through with a bizarre mental image that I was going to find some mechanism by which pull ups, squats and pushups would allow me to understand red-black trees and bloom filters.
monkmartinezalmost 8 years ago
Is there something like this for Python?