merge
This commit is contained in:
commit
188b702dd1
62
README.md
62
README.md
|
@ -17,6 +17,7 @@
|
|||
<details>
|
||||
<summary>Translations:</summary>
|
||||
|
||||
- [اردو - Urdu](translations/README-ur.md)
|
||||
- [中文版本](translations/README-cn.md)
|
||||
- [Tiếng Việt - Vietnamese](translations/README-vi.md)
|
||||
- [Español](translations/README-es.md)
|
||||
|
@ -45,7 +46,6 @@
|
|||
- [Українська](https://github.com/jwasham/coding-interview-university/issues/106)
|
||||
- [Korean(한국어)](https://github.com/jwasham/coding-interview-university/issues/118)
|
||||
- [Telugu](https://github.com/jwasham/coding-interview-university/issues/117)
|
||||
- [Urdu](https://github.com/jwasham/coding-interview-university/issues/519)
|
||||
- [Thai](https://github.com/jwasham/coding-interview-university/issues/156)
|
||||
- [Greek](https://github.com/jwasham/coding-interview-university/issues/166)
|
||||
- [Malayalam](https://github.com/jwasham/coding-interview-university/issues/239)
|
||||
|
@ -59,27 +59,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -319,7 +298,7 @@ When I did the study plan, I used 2 languages for most of it: C and Python
|
|||
and algorithms in your bones. In higher level languages like Python or Java, these are hidden from you. In day to day work, that's terrific,
|
||||
but when you're learning how these low-level data structures are built, it's great to feel close to the metal.
|
||||
- C is everywhere. You'll see examples in books, lectures, videos, *everywhere* while you're studying.
|
||||
- [The C Programming Language, Vol 2](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
|
||||
- [The C Programming Language, 2nd Edition](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
|
||||
- This is a short book, but it will give you a great handle on the C language and if you practice it a little
|
||||
you'll quickly get proficient. Understanding C helps you understand how programs and memory work.
|
||||
- You don't need to go super deep in the book (or even finish it). Just get to where you're comfortable reading and writing in C.
|
||||
|
@ -586,17 +565,17 @@ But don't forget to do coding problems from above while you learn!
|
|||
- There are a lot of videos here. Just watch enough until you understand it. You can always come back and review.
|
||||
- Don't worry if you don't understand all the math behind it.
|
||||
- You just need to understand how to express the complexity of an algorithm in terms of Big-O.
|
||||
- [ ] [Harvard CS50 - Asymptotic Notation (video)](https://www.youtube.com/watch?v=iOq5kSKqeR4)
|
||||
- [ ] [Big O Notations (general quick tutorial) (video)](https://www.youtube.com/watch?v=V6mKVRU1evU)
|
||||
- [ ] [Big O Notation (and Omega and Theta) - best mathematical explanation (video)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&index=2&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
|
||||
- [ ] [Skiena (video)](https://www.youtube.com/watch?v=z1mkCe3kVUA)
|
||||
- [x] [Harvard CS50 - Asymptotic Notation (video)](https://www.youtube.com/watch?v=iOq5kSKqeR4)
|
||||
- [x] [Big O Notations (general quick tutorial) (video)](https://www.youtube.com/watch?v=V6mKVRU1evU)
|
||||
- [x] [Big O Notation (and Omega and Theta) - best mathematical explanation (video)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&index=2&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
|
||||
- [ ] [Skiena (video)](https://www.youtube.com/watch?v=z1mkCe3kVUA) runing
|
||||
- [ ] [UC Berkeley Big O (video)](https://archive.org/details/ucberkeley_webcast_VIS4YDpuP98)
|
||||
- [ ] [Amortized Analysis (video)](https://www.youtube.com/watch?v=B3SpQZaAZP4&index=10&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
|
||||
- [ ] TopCoder (includes recurrence relations and master theorem):
|
||||
- [x] TopCoder (includes recurrence relations and master theorem):
|
||||
- [Computational Complexity: Section 1](https://www.topcoder.com/thrive/articles/Computational%20Complexity%20part%20one)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/thrive/articles/Computational%20Complexity%20part%20two)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
- [x] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [x] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
Well, that's about enough of that.
|
||||
|
||||
|
@ -606,8 +585,8 @@ if you can identify the runtime complexity of different algorithms. It's a super
|
|||
## Data Structures
|
||||
|
||||
- ### Arrays
|
||||
- [ ] About Arrays:
|
||||
- [Arrays CS50 Harvard University](https://www.youtube.com/watch?v=tI_tIZFyKBw&t=3009s)
|
||||
- [x] About Arrays:
|
||||
- [Arrays CS50 Harvard University](https://www.youtube.com/watch?v=tI_tIZFyKBw&t=3009s)
|
||||
- [Arrays (video)](https://www.coursera.org/lecture/data-structures/arrays-OsBSF)
|
||||
- [UC Berkeley CS61B - Linear and Multi-Dim Arrays (video)](https://archive.org/details/ucberkeley_webcast_Wp8oiO_CZZE) (Start watching from 15m 32s)
|
||||
- [Dynamic Arrays (video)](https://www.coursera.org/lecture/data-structures/dynamic-arrays-EwbnV)
|
||||
|
@ -1225,7 +1204,7 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1235,17 +1214,11 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
## Update Your Resume
|
||||
|
||||
- See Resume prep information in the books: "Cracking The Coding Interview" and "Programming Interviews Exposed"
|
||||
- I don't know how important this is (you can do your own research) but here is an article on making your resume ATS Compliant:
|
||||
- [How to Create or Check if your Resume is ATS Compliant](https://ayedot.com/97/MiniBlog/Meaning-of-ATS-compliant-resume-and-How-to-create-ATS-Resume-for-Free)
|
||||
- ["This Is What A GOOD Resume Should Look Like" by Gayle McDowell (author of Cracking the Coding Interview)](https://www.careercup.com/resume),
|
||||
- Note by the author: "This is for a US-focused resume. CVs for India and other countries have different expectations, although many of the points will be the same."
|
||||
- ["Step-by-step resume guide" by Tech Interview Handbook](https://www.techinterviewhandbook.org/resume/guide)
|
||||
- Detailed guide on how to set up your resume from scratch, write effective resume content, optimize it, and test your resume
|
||||
|
||||
|
||||
## Find a Job
|
||||
|
||||
- [Sites for Finding Jobs](https://ayedot.com/151/MiniBlog/Top-10-Best-Websites-for-Careers--Jobs)
|
||||
- Detailed guide on how to set up your resume from scratch, write effective resume content, optimize it, and test your resume
|
||||
|
||||
## Interview Process & General Interview Prep
|
||||
|
||||
|
@ -1261,8 +1234,6 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- [ ] [The Approach](https://www.youtube.com/watch?v=wCl9kvQGHPI)
|
||||
- [ ] [Problem Walkthrough](https://www.youtube.com/watch?v=4UWDyJq8jZg)
|
||||
- Prep Courses:
|
||||
- [Software Engineer Interview Unleashed (paid course)](https://www.udemy.com/software-engineer-interview-unleashed):
|
||||
- Learn how to make yourself ready for software engineer interviews from a former Google interviewer.
|
||||
- [Python for Data Structures, Algorithms, and Interviews (paid course)](https://www.udemy.com/python-for-data-structures-algorithms-and-interviews/):
|
||||
- A Python centric interview prep course which covers data structures, algorithms, mock interviews and much more.
|
||||
- [Intro to Data Structures and Algorithms using Python (Udacity free course)](https://www.udacity.com/course/data-structures-and-algorithms-in-python--ud513):
|
||||
|
@ -1271,6 +1242,8 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- Get hands-on practice with over 100 data structures and algorithm exercises and guidance from a dedicated mentor to help prepare you for interviews and on-the-job scenarios.
|
||||
- [Grokking the Behavioral Interview (Educative free course)](https://www.educative.io/courses/grokking-the-behavioral-interview):
|
||||
- Many times, it’s not your technical competency that holds you back from landing your dream job, it’s how you perform on the behavioral interview.
|
||||
- [AlgoMonster (paid course with free content)](https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github):
|
||||
- The crash course for LeetCode. Covers all the patterns condensed from thousands of questions.
|
||||
|
||||
Mock Interviews:
|
||||
- [Gainlo.co: Mock interviewers from big companies](http://www.gainlo.co/#!/) - I used this and it helped me relax for the phone screen and on-site interview
|
||||
|
@ -1295,9 +1268,6 @@ Have a story, not just data, about something you accomplished.
|
|||
- What did you learn at [job x / project y]?
|
||||
- What would you have done better at [job x / project y]?
|
||||
|
||||
- If you find it hard to come up with good answers of these types of interview questions, here are some ideas:
|
||||
- [General Interview Questions and their Answers](https://ayedot.com/119/MiniBlog/General-Interview-Questions-and-their-Answers-for-Tech-Jobs)
|
||||
|
||||
## Have questions for the interviewer
|
||||
|
||||
Some of mine (I already may know the answers, but want their opinion or team perspective):
|
||||
|
@ -1885,7 +1855,7 @@ You're never really done.
|
|||
- Stanford lectures on sorting:
|
||||
- [Lecture 15 | Programming Abstractions (video)](https://www.youtube.com/watch?v=ENp00xylP7c&index=15&list=PLFE6E58F856038C69)
|
||||
- [Lecture 16 | Programming Abstractions (video)](https://www.youtube.com/watch?v=y4M9IVgrVKo&index=16&list=PLFE6E58F856038C69)
|
||||
- Shai Simonson, [Aduni.org](http://www.aduni.org/):
|
||||
- Shai Simonson:
|
||||
- [Algorithms - Sorting - Lecture 2 (video)](https://www.youtube.com/watch?v=odNJmw5TOEE&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=2)
|
||||
- [Algorithms - Sorting II - Lecture 3 (video)](https://www.youtube.com/watch?v=hj8YKFTFKEE&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=3)
|
||||
- Steven Skiena lectures on sorting:
|
||||
|
|
|
@ -59,27 +59,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Word 'n bydraër</strong> en borg Kodering Onderhoud Universiteit!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Spesiale dank aan:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -592,6 +571,7 @@ Maar moet nie vergeet om kode probleme op te los terwyl jy leer nie!
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/thrive/articles/Computational%20Complexity%20part%20one)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/thrive/articles/Computational%20Complexity%20part%20two)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
Well, dis genoeg van daardie.
|
||||
|
||||
|
@ -637,6 +617,7 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- nie die hele video nie, net gedeeltes oor Node struct en geheue toekening
|
||||
- [ ] Linked List vs Skikkings:
|
||||
|
@ -668,11 +649,13 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
|
||||
- ### Stapel
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/lecture/data-structures/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Sal nie implementeer nie. Implementering met skikking is maklik
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implementeer met linked-list, met stert wyser:
|
||||
- enqueue(waarde) - voeg waarde by posisie by stert
|
||||
- dequeue() - lewer waarde en verwyder die minste onlangse gevoegde element (voorkant)
|
||||
|
@ -698,6 +681,7 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
- [ ] [PyCon 2017: The Dictionary Even Mightier (video)](https://www.youtube.com/watch?v=66P5FMkWoVU)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-hash-tables-m7UuP)
|
||||
|
@ -721,6 +705,7 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/thrive/articles/Binary%20Search)
|
||||
- [ ] [blueprint](https://leetcode.com/discuss/general-discussion/786126/python-powerful-ultimate-binary-search-template-solved-many-problems)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (op 'n gesorteerde skikking van heelgetalle)
|
||||
- binary search met recursion
|
||||
|
@ -772,6 +757,9 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
- inorder (DFS: links, self, regs)
|
||||
- postorder (DFS: links, regs, self)
|
||||
- preorder (DFS: self, links, regs)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Revisie (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -817,6 +805,7 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
- [ ] [MIT: Heaps en Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Lineêr Tyd BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implementeer 'n max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - nodig vir insert
|
||||
|
@ -881,6 +870,14 @@ of jy kan identifiseer wat die runtime kompleksiteit van verskeie algoritmes is.
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implementeer:
|
||||
- [ ] Mergesort: O(n log n) gemiddelde en slegste gevalle
|
||||
- [ ] Quicksort O(n log n) gemiddelde geval
|
||||
|
@ -943,6 +940,8 @@ Grafieke kan gebruik word om baie problmeme in rekenaar wetenskap te verteenwoor
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Kursus:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1202,7 +1201,7 @@ Grafieke kan gebruik word om baie problmeme in rekenaar wetenskap te verteenwoor
|
|||
|
||||
- [ ] Reeks van 2-3 minute kort onderwerp videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Reeks van 2-5 minute kort onderwerp videos - Michael Sambol (38 videos):
|
||||
- [ ] Reeks van 2-5 minute kort onderwerp videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1693,6 +1692,7 @@ Jy is nooit regtig klaar nie.
|
|||
- [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- Prakties:
|
||||
|
@ -1733,6 +1733,7 @@ Jy is nooit regtig klaar nie.
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- dek cache-oblivious B-Trees, baie interessante datastrukture
|
||||
- die eerste 37 minute is baie tegnies en mag geskiep word (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -58,27 +58,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -546,6 +525,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## Data Structures
|
||||
|
||||
|
@ -587,6 +567,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -618,11 +599,13 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/lecture/data-structures/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -647,6 +630,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-hash-tables-m7UuP)
|
||||
|
@ -669,6 +653,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -720,6 +705,9 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -765,6 +753,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -829,6 +818,14 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -892,6 +889,8 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1278,7 +1277,7 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1716,6 +1715,7 @@ You're never really done.
|
|||
- [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1756,6 +1756,7 @@ You're never really done.
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -56,27 +56,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>পৃষ্ঠপোষক হয়ে যান</strong> এবং কোডিং ইন্টারভিউ বিশ্ববিদ্যালয় সমর্থন করুন!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>বিশেষ ধন্যবাদঃ</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -782,7 +761,10 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
-অর্ডার (ডিএফএস: বাম, স্ব, ডান)
|
||||
-পোস্টর্ডার (ডিএফএস: বাম, ডান, স্ব)
|
||||
-প্রির্ডার (ডিএফএস: স্ব, বাম, ডান)
|
||||
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
-###বাইনারি অনুসন্ধান গাছ: বিএসটি
|
||||
- [বাইনারি অনুসন্ধান বৃক্ষ পর্যালোচনা (ভিডিও)] (https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
- [সিরিজ (ভিডিও)] (https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/p82sw/core-intr پيداوار-to-binary-search-trees)
|
||||
|
@ -829,6 +811,7 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
- [এমআইটি: হিপস এবং হিপ সাজান (ভিডিও)] (https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [সিএস 61 বি লেকচার 24: অগ্রাধিকার ক্যু (ভিডিও)] (https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [লিনিয়ার টাইম বিল্ডহীপ (সর্বাধিক হিপ)] (https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- একটি সর্বোচ্চ গাদা প্রয়োগ করুন:
|
||||
- sertোকান
|
||||
- সিফ্ট_আপ-.োকানোর জন্য প্রয়োজনীয়
|
||||
|
@ -898,7 +881,15 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
- [বাস্তবায়ন (সি)] (http://www.cs.yale.edu/homes/aspnes/class/223/exults/randomization/quick.c)
|
||||
- [বাস্তবায়ন (সি)] (https://github.com/jwasham/pੈਕਟ-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [বাস্তবায়ন (পাইথন)] (https://github.com/jwasham/pੈਕਟ-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- বাস্তবায়ন:
|
||||
- মার্জোর্ট: ও (এন লগ এন) গড় এবং সবচেয়ে খারাপ অবস্থা case
|
||||
- কুইকসোর্ট ও (এন লগ এন) গড় কেস
|
||||
|
@ -967,6 +958,8 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
- [সিএস 61 বি 2014: ওজনযুক্ত গ্রাফ (ভিডিও)] (https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [লোভী অ্যালগরিদম: ন্যূনতম বিস্তৃত গাছ (ভিডিও)] (https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [দৃr়ভাবে সংযুক্ত উপাদানগুলি কোসারাজুর অ্যালগোরিদম গ্রাফ আলগোরিদিম (ভিডিও)] (https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
-সম্পূর্ণ কোর্সেরা কোর্স:
|
||||
- [গ্রাফগুলিতে অ্যালগরিদমগুলি (ভিডিও)] (https://www.coursera.org/learn/algorithms-on-অনুচ্ছেদ / হোম / উপস্ব)
|
||||
|
@ -1390,7 +1383,7 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
|
||||
- শর্ট সাবজেক্টের ২-৩ মিনিটের সিরিজ (২৩ টি ভিডিও)
|
||||
-[ভিডিও] (https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- 2-5 মিনিটের সংক্ষিপ্ত বিষয় ভিডিওর সিরিজ-মাইকেল সাম্বোল (18 টি ভিডিও):
|
||||
- 2-5 মিনিটের সংক্ষিপ্ত বিষয় ভিডিওর সিরিজ-মাইকেল সাম্বোল - Michael Sambol (40 টি ভিডিও):
|
||||
-[ভিডিও] (https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [সেজেজউইক ভিডিও-অ্যালগোরিদম আই] (https://www.coursera.org/learn/algorithms-part1)
|
||||
- [সেজেজিক ভিডিও-দ্বিতীয় অ্যালগোরিদম] (https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1819,6 +1812,7 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
- [আদুনি-অ্যালগরিদম-লেকচার 5 (ভিডিও)] (https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [লাল-কালো বৃক্ষ] (https://en.wikedia.org/wiki/Red%E2%80%93 ব্ল্যাক_ট্রি)
|
||||
- [বাইনারি অনুসন্ধান এবং লাল কালো গাছের পরিচিতি] (https://www.topcoder.com/commune/competitive-pogramming/tutorials/an-intr Produc-to-binary-search-and-red-black-trees /)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- ** ২-৩ টি অনুসন্ধান গাছ **
|
||||
-প্রস্তুতিতে:
|
||||
|
@ -1859,6 +1853,7 @@ iOS-এ এটির দাম $25 কিন্তু অন্যান্য
|
|||
- [এমআইটি 85.৮৫১-মেমরি হায়ারার্কি মডেলগুলি (ভিডিও)] (https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
-ক্যাশে-বিস্মৃত বি-গাছগুলি কভার করে, খুব আকর্ষণীয় ডেটা স্ট্রাকচার
|
||||
-প্রথম 37 মিনিট খুব প্রযুক্তিগত, এড়িয়ে যেতে পারে (বি ব্লকের আকার, ক্যাশে লাইনের আকার)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
-###কেডি গাছ
|
||||
|
|
|
@ -13,24 +13,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>成为赞助商</strong> 并支持编程大学!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>特别感谢:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>算法秘籍,模版刷题效率翻倍,上岸大厂必备</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>谷歌工程师们浓缩多年刷题经验,呕心沥血总结出的最强算法题型详解,提炼精华模版,由浅入深,简单易懂,举一反三。助你一扫刷题烦恼,一览众山小,高处不胜寒。早日上岸,圆梦大厂。</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -468,6 +450,7 @@
|
|||
- [计算性复杂度:第一部](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [计算性复杂度:第二部](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [速查表(Cheat sheet)](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## 数据结构
|
||||
|
||||
|
@ -509,6 +492,7 @@
|
|||
- [ ] [单向链表(视频)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B —— 链表(一)(视频)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B —— 链表(二)(视频)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C 代码(视频)](https://www.youtube.com/watch?v=QN6FPiD0Gzo) ── 并非看完整个视频,只需要看关于节点结构和内存分配那一部分即可
|
||||
- [ ] 链表 vs 数组:
|
||||
- [基本链表 Vs 数组(视频)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-linked-lists-vs-arrays-rjBs9)
|
||||
|
@ -537,11 +521,13 @@
|
|||
|
||||
- ### 堆栈(Stack)
|
||||
- [ ] [堆栈(视频)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] 可以不实现,因为使用数组来实现并不重要
|
||||
|
||||
- ### 队列(Queue)
|
||||
- [ ] [队列(视频)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [原型队列/先进先出(FIFO)](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] 使用含有尾部指针的链表来实现:
|
||||
- enqueue(value) —— 在尾部添加值
|
||||
- dequeue() —— 删除最早添加的元素并返回其值(首部元素)
|
||||
|
@ -565,6 +551,7 @@
|
|||
- [ ] [PyCon 2010:The Mighty Dictionary(视频)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(进阶)随机取样(Randomization):全域哈希(Universal Hashing)& 完美哈希(Perfect Hashing)(视频)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(进阶)完美哈希(Perfect hashing)(视频)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] 在线课程:
|
||||
- [ ] [基本哈希表(视频)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -587,6 +574,7 @@
|
|||
- [ ] [二分查找(视频)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [二分查找(视频)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [详情](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] 实现:
|
||||
- 二分查找(在一个已排序好的整型数组中查找)
|
||||
- 迭代式二分查找
|
||||
|
@ -640,6 +628,9 @@
|
|||
- 中序遍历(DFS:左、节点本身、右)
|
||||
- 后序遍历(DFS:左、右、节点本身)
|
||||
- 先序遍历(DFS:节点本身、左、右)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### 二叉查找树(Binary search trees):BSTs
|
||||
- [ ] [二叉查找树概览(视频)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -687,6 +678,7 @@
|
|||
- [ ] [MIT:堆与堆排序(视频)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24:优先级队列(视频)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [构建线性时间复杂度的堆(大顶堆)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] 实现一个大顶堆:
|
||||
- [ ] insert
|
||||
- [ ] sift_up —— 用于插入元素
|
||||
|
@ -742,6 +734,14 @@
|
|||
- [ ] [实现(C语言)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [实现(Python语言)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] 实现:
|
||||
- [ ] 归并:平均和最差情况的时间复杂度为 O(n log n)。
|
||||
- [ ] 快排:平均时间复杂度为 O(n log n)。
|
||||
|
@ -804,6 +804,8 @@
|
|||
- [ ] [CS 61B 2014: 加权图(视频)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [贪心算法: 最小生成树(视频)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [图的算法之强连通分量 Kosaraju 算法(视频)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- 完整的 Coursera 课程:
|
||||
- [ ] [图的算法(视频)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1190,7 +1192,7 @@
|
|||
|
||||
- [ ] 2-3分钟的简短主题视频系列(23个视频)
|
||||
- [视频](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] 2-5分钟的简短主题视频系列──Michael Sambol (38个视频):
|
||||
- [ ] 2-5分钟的简短主题视频系列──Michael Sambol (40个视频):
|
||||
- [视频](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick 视频 ── 算法I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick 视频 ── 算法II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1604,6 +1606,7 @@
|
|||
- [Aduni —— 算法 —— 课程5(视频)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [黑树(Black Tree)](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [二分查找及红黑树的介绍](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3查找树**
|
||||
- 实际中:2-3树的元素插入非常快速,但却有着查询慢的代价(因为相比较 AVL 树来说,其高度更高)。
|
||||
|
@ -1635,6 +1638,7 @@
|
|||
- [MIT 6.851 —— 内存层次模块(Memory Hierarchy Models)(视频)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- 覆盖有高速缓存参数无关型(cache-oblivious)B 树和非常有趣的数据结构
|
||||
- 头37分钟讲述的很专业,或许可以跳过(B 指块的大小、即缓存行的大小)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
- ### k-D树
|
||||
- 非常适合在矩形或更高维度的对象中查找点数
|
||||
|
|
|
@ -49,27 +49,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -570,6 +549,7 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Spickzettel](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
</details>
|
||||
|
@ -617,6 +597,7 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- nicht das ganze Video nur die Teile über Knotenstruktur und Speicherverwaltung.
|
||||
- [ ] Linked Lists vs Arrays:
|
||||
|
@ -648,11 +629,13 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
|
||||
- ### Stack (Stapel)
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Werde ich nicht implementieren. Implementierung mittels Array ist trivial.
|
||||
|
||||
- ### Queue (Warteschlangen)
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implementierung mittels verketteten Listen, mit Tail-Pointer:
|
||||
- enqueue(value) - fügt Wert am Ende ein
|
||||
- dequeue() - gibt das älteste Element (am Anfang der Liste) zurück und löscht es
|
||||
|
@ -677,6 +660,7 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Kurse:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -704,6 +688,7 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [Details](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implementierung:
|
||||
- Binärsuche (auf einem sortierten Array von Ganzzahlen)
|
||||
- Binärsuche mittels Rekursion
|
||||
|
@ -760,6 +745,9 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- inorder (DFS: links, selber, rechts)
|
||||
- postorder (DFS: links, rechts, selber)
|
||||
- preorder (DFS: selber, links, rechts)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs (Binäre Suchbäume)
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -807,6 +795,7 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implementierung eines Max-Heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - gebraucht fürs Einfügen
|
||||
|
@ -877,6 +866,14 @@ Schreib Code auf einer Tafel oder auf Papier, aber nicht am Computer. Teste mit
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implementierung:
|
||||
- [ ] Mergesort: O(n log n) Durchschnitt und worst case
|
||||
- [ ] Quicksort O(n log n) Durchschnitt
|
||||
|
@ -945,6 +942,8 @@ Graphen können genutzt werden, um damit viele verschiedene Probleme in der Info
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Kompletter Coursera Kurs:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1368,7 +1367,7 @@ Graphen können genutzt werden, um damit viele verschiedene Probleme in der Info
|
|||
|
||||
- [ ] Reihe mit kurzen 2-3 Minuten Videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Reihe mit kurzen 2-5 Minuten Videos - Michael Sambol (38 videos):
|
||||
- [ ] Reihe mit kurzen 2-5 Minuten Videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1799,6 +1798,7 @@ Algorithmen Bescheid wisst, sodass ihr eine größere Auswahl an Werkzeugen habt
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 Bäume**
|
||||
- In der Praxis:
|
||||
|
@ -1839,6 +1839,7 @@ Algorithmen Bescheid wisst, sodass ihr eine größere Auswahl an Werkzeugen habt
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- behandelt cache-oblivious B-Bäume, sehr interessante Datenstrukturen
|
||||
- die ersten 37 Minuten sind sehr technisch, können übersprungen werden (B ist Blockgröße, Cache Zeilen Länge)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Bäume
|
||||
|
|
|
@ -456,6 +456,7 @@
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
Εάν μερικές διαλέξεις είναι πολύ μαθηματικές, μπορείς να μεταβείς προς τα κάτω και να παρακολουθήσεις μερικά βίντεο σχετικά με τα διακριτά μαθηματικά για να πάρεις όλες τις γνώσεις που απαιτούνται.
|
||||
|
@ -503,6 +504,7 @@
|
|||
- [ ] Περιγραφή:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation.
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -538,6 +540,7 @@
|
|||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [Using Stacks Last-In First-Out (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-stacks-last-first-out/149042/177120-4.html)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### Queue
|
||||
|
@ -545,6 +548,7 @@
|
|||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [Priority Queues (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Priority-queues-deques/149042/177123-4.html)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -569,6 +573,7 @@
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Understanding Hash Functions (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Understanding-hash-functions/149042/177126-4.html)
|
||||
|
@ -595,6 +600,7 @@
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -648,4 +654,7 @@
|
|||
worst: O(n)
|
||||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
|
|
@ -51,27 +51,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -541,6 +520,7 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
Si algunas de las lecturas son muy matemáticas, puede saltar a la parte inferior y ver las matemáticas discretas para tener el conocimiento base.
|
||||
|
@ -584,6 +564,7 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- [ ] Descripción:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- No todo el video, solo porciones acerca de la estructura de nodos y la asignación de memoria.
|
||||
- [ ] Listas enlazadas vs Arreglos:
|
||||
|
@ -614,11 +595,13 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- No es necesario.
|
||||
- ### Pila:
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] No implementaré. Implementando con arreglos es trivial.
|
||||
|
||||
- ### Cola o fila
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implementar usando listas enlazadas, con el puntero de la cola:
|
||||
- enqueue(value) – Añade el valor en la posición de la cola.
|
||||
- dequeue() – Regresa el valor y elimina el valor más recientemente añadido(frontal)
|
||||
|
@ -642,6 +625,7 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Cursos en línea:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -663,6 +647,7 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implementar:
|
||||
- Búsqueda binaria (en un arreglo ordenado de enteros)
|
||||
- Búsqueda binaria usando recursión.
|
||||
|
@ -715,6 +700,9 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Árboles de búsqueda binaria: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -762,6 +750,7 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implementar una cola máxima:
|
||||
- [ ] insert
|
||||
- [ ] sift_up – Necesario para el insert.
|
||||
|
@ -807,6 +796,14 @@ Escriba código en un pizarrón o en papel, pero no en la computadora. Pruebe co
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implemente:
|
||||
- [ ] Mergesort: O(n log n) Promedio y peor caso.
|
||||
- [ ] Quicksort O(n log n) Caso promedio.
|
||||
|
@ -865,6 +862,8 @@ Los gráficos pueden ser usados para representar muchos problemas en las Ciencia
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Curso Completo de Coursera:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1303,7 +1302,7 @@ Es bueno si quieres repasar frecuentemente.
|
|||
|
||||
- [ ] Series de videos cortos sobre temas de 2-3 minutos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series de videos cortos sobre temas de 2-5 minutos - Michael Sambol (38 videos):
|
||||
- [ ] Series de videos cortos sobre temas de 2-5 minutos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1646,6 +1645,7 @@ Es probable que estos temas no aparezcan en una entrevista, pero los añadí par
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **Árboles de búsqueda 2-3**
|
||||
- En práctica:
|
||||
|
@ -1679,6 +1679,7 @@ Es probable que estos temas no aparezcan en una entrevista, pero los añadí par
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- Cubre árboles-B de cache inconsistente, estructuras de datos muy interesantes.
|
||||
- Los primeros 37 minutos son muy técnicos, puede saltarlos (B es tamaño de bloque, tamaño de línea de caché)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
- ### Árboles k-D
|
||||
- Ideal para encontrar el número de puntos en un rectángulo o un objeto de dimensión superior.
|
||||
|
|
|
@ -55,27 +55,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -573,6 +552,7 @@ Choose one:
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
بسیارخب، فکر کنم در همین حد کافی باشه.
|
||||
|
||||
|
@ -618,6 +598,7 @@ Choose one:
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -649,11 +630,13 @@ Choose one:
|
|||
|
||||
- ### پشته
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/lecture/data-structures/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial
|
||||
|
||||
- ### صف
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -679,6 +662,7 @@ Choose one:
|
|||
- [ ] [PyCon 2017: The Dictionary Even Mightier (video)](https://www.youtube.com/watch?v=66P5FMkWoVU)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-hash-tables-m7UuP)
|
||||
|
@ -701,6 +685,7 @@ Choose one:
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -752,6 +737,9 @@ Choose one:
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### درخت جستجوی دودویی: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -797,6 +785,7 @@ Choose one:
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -861,6 +850,14 @@ Choose one:
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -924,6 +921,8 @@ Choose one:
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1182,7 +1181,7 @@ Choose one:
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1668,6 +1667,7 @@ Mock Interviews:
|
|||
- [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1708,6 +1708,7 @@ Mock Interviews:
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -10,27 +10,6 @@ Traductions:
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -581,7 +560,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
If some of the lectures are too mathy, you can jump down to the bottom and
|
||||
watch the discrete mathematics videos to get the background knowledge.
|
||||
|
@ -625,6 +604,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] Description:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation.
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -656,11 +636,13 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -685,6 +667,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -707,6 +690,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -760,6 +744,9 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -807,6 +794,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -853,6 +841,14 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -910,6 +906,8 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1277,7 +1275,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1710,6 +1708,7 @@ You're never really done.
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1749,6 +1748,7 @@ You're never really done.
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -22,27 +22,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -592,6 +571,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
If some of the lectures are too mathy, you can jump down to the bottom and
|
||||
|
@ -635,6 +615,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] Description:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation.
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -666,11 +647,13 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
|
||||
- ### מחסנית
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### תור
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -695,6 +678,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -717,6 +701,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -770,6 +755,9 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -817,6 +805,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -863,6 +852,14 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -920,6 +917,8 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1287,7 +1286,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [סרטונים](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [סרטונים](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1721,6 +1720,7 @@ You're never really done.
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1760,6 +1760,7 @@ You're never really done.
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -61,27 +61,6 @@
|
|||
<a href="https://github.com/sponsors/jwasham"><strong>प्रायोजक बनें</strong>
|
||||
और कोडिंग साक्षात्कार विश्वविद्यालय का समर्थन करें!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>विशेष धन्यवाद:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -600,6 +579,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [कम्प्यूटेशनल जटिलता: सेक्शन 1](https://www.topcoder.com/thrive/articles/Computational%20Complexity%20part%20one)
|
||||
- [कम्प्यूटेशनल जटिलता: धारा 2](https://www.topcoder.com/thrive/articles/Computational%20Complexity%20part%20two)
|
||||
- [ ] [चीट शीट] (http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
खैर, बस इतना ही काफी है।
|
||||
|
||||
|
@ -644,6 +624,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [ ] [सिंगली लिंक्ड लिस्ट (वीडियो)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [सीएस 61बी - लिंक्ड सूचियां 1 (वीडियो)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [सीएस 61बी - लिंक्ड सूचियां 2 (वीडियो)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [सी कोड (वीडियो)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- संपूर्ण वीडियो नहीं, केवल नोड संरचना और स्मृति आवंटन के बारे में अंश
|
||||
- [] लिंक्ड लिस्ट बनाम एरेज़:
|
||||
|
@ -674,11 +655,13 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- No need to implement
|
||||
- ### ढेर
|
||||
- [ ] [स्टैक (वीडियो)](https://www.coursera.org/lecture/data-structs/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] लागू नहीं होगा। सरणी के साथ कार्यान्वित करना तुच्छ है
|
||||
|
||||
- ### कतार
|
||||
- [ ] [कतार (वीडियो)](https://www.coursera.org/lecture/data-structs/queues-EShpq)
|
||||
- [ ] [सर्कुलर बफर/फीफो](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [] टेल पॉइंटर के साथ लिंक्ड-लिस्ट का उपयोग करके लागू करें:
|
||||
- एनक्यू (मान) - पूंछ पर स्थिति पर मूल्य जोड़ता है
|
||||
- dequeue () - मान लौटाता है और कम से कम हाल ही में जोड़े गए तत्व (सामने) को हटाता है
|
||||
|
@ -704,6 +687,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [ ] [पायकॉन 2017: द डिक्शनरी इवन माइटियर (वीडियो)](https://www.youtube.com/watch?v=66P5FMkWoVU)
|
||||
- [ ] [(उन्नत) रैंडमाइजेशन: यूनिवर्सल एंड परफेक्ट हैशिंग (वीडियो)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(उन्नत) परफेक्ट हैशिंग (वीडियो)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
|
||||
- [ ] ऑनलाइन पाठ्यक्रम:
|
||||
|
@ -728,6 +712,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [ ] [बाइनरी सर्च (वीडियो)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [विस्तार] (https://www.topcoder.com/thrive/articles/Binary%20Search)
|
||||
- [ ] [खाका](https://leetcode.com/discuss/general-discussion/786126/python-powerful-ultimate-binary-search-template-solved-many-problems)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] अमल में लाना:
|
||||
- द्विआधारी खोज (पूर्णांक के क्रमबद्ध सरणी पर)
|
||||
- पुनरावर्तन का उपयोग कर द्विआधारी खोज
|
||||
|
@ -777,6 +762,9 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- क्रम में (डीएफएस: बाएं, स्वयं, दाएं)
|
||||
- पोस्टऑर्डर (डीएफएस: बाएं, दाएं, स्वयं)
|
||||
- प्रीऑर्डर (डीएफएस: स्वयं, बाएं, दाएं)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### बाइनरी सर्च ट्री: बीएसटी
|
||||
- [ ] [बाइनरी सर्च ट्री रिव्यू (वीडियो)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -822,6 +810,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [ ] [एमआईटी: हीप्स एंड हीप सॉर्ट (वीडियो)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [सीएस 61बी व्याख्यान 24: प्राथमिकता कतारें (वीडियो)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [रैखिक समय BuildHeap (अधिकतम-ढेर)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [] अधिकतम ढेर लागू करें:
|
||||
- [ ] डालना
|
||||
- [] sift_up - डालने के लिए आवश्यक
|
||||
|
@ -884,11 +873,20 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [ ] [कार्यान्वयन (सी)] (https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [कार्यान्वयन (पायथन)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] अमल में लाना:
|
||||
- [] मर्जसॉर्ट: ओ (एन लॉग एन) औसत और सबसे खराब स्थिति
|
||||
- [] क्विकसॉर्ट ओ (एन लॉग एन) औसत मामला
|
||||
- चयन प्रकार और सम्मिलन प्रकार दोनों ओ (एन ^ 2) औसत और सबसे खराब स्थिति हैं
|
||||
- हीपसॉर्ट के लिए, ऊपर हीप डेटा संरचना देखें
|
||||
|
||||
- [] आवश्यक नहीं है, लेकिन मैंने उनकी सिफारिश की:
|
||||
- [ ] [सेजविक - रेडिक्स सॉर्ट्स (6 वीडियो)](https://www.coursera.org/learn/algorithms-part2/home/week/3)
|
||||
- [ ] [1. जावा में स्ट्रिंग्स](https://www.coursera.org/learn/algorithms-part2/lecture/vGHvb/strings-in-java)
|
||||
|
@ -945,6 +943,8 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [ ] [सीएस 61बी 2014: भारित ग्राफ (वीडियो)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [लालची एल्गोरिदम: न्यूनतम फैले हुए पेड़ (वीडियो)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [मजबूत रूप से जुड़े घटक कोसाराजू का एल्गोरिथम ग्राफ़ एल्गोरिथम (वीडियो)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- पूर्ण कौरसेरा कोर्स:
|
||||
- [ ] [ग्राफ़ पर एल्गोरिदम (वीडियो)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1200,9 +1200,9 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
इस अनुभाग में छोटे वीडियो होंगे जिन्हें आप अधिकांश महत्वपूर्ण अवधारणाओं की समीक्षा करने के लिए बहुत तेज़ी से देख सकते हैं।
|
||||
यदि आप अक्सर एक पुनश्चर्या चाहते हैं तो यह अच्छा है।
|
||||
|
||||
- [] 2-3 मिनट के लघु विषय वीडियो की श्रृंखला (23 वीडियो)
|
||||
- [ ] 2-3 मिनट के लघु विषय वीडियो की श्रृंखला (23 वीडियो)
|
||||
- [वीडियो](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] 2-5 मिनट के लघु विषय वीडियो की श्रृंखला - माइकल साम्बोल (18 वीडियो):
|
||||
- [ ] 2-5 मिनट के लघु विषय वीडियो की श्रृंखला - Michael Sambol (40 वीडियो):
|
||||
- [वीडियो](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [सेजविक वीडियो - एल्गोरिदम I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [सेजविक वीडियो - एल्गोरिदम II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1691,6 +1691,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [अदुनी - एल्गोरिदम - व्याख्यान 5 (वीडियो)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [रेड-ब्लैक ट्री](https://en.wikipedia.org/wiki/Red%E2%80%93ब्लैक_ट्री)
|
||||
- [एन इंट्रोडक्शन टू बाइनरी सर्च एंड रेड ब्लैक ट्री](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 पेड़ खोजें**
|
||||
- प्रयोग में:
|
||||
|
@ -1731,6 +1732,7 @@ Anki प्रारूप में मेरा फ्लैशकार्ड
|
|||
- [MIT 6.851 - मेमोरी पदानुक्रम मॉडल (वीडियो)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- कैशे-अनभिज्ञ बी-पेड़ों को शामिल करता है, बहुत ही रोचक डेटा संरचनाएं
|
||||
- पहले 37 मिनट बहुत तकनीकी हैं, छोड़े जा सकते हैं (बी ब्लॉक आकार, कैश लाइन आकार है)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### के-डी पेड़
|
||||
|
|
|
@ -7,27 +7,6 @@ Versi asli: [Bahasa Inggris](../README.md)
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -463,6 +442,7 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## Struktur Data
|
||||
|
||||
|
@ -504,6 +484,7 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [Kode C (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- bukan keseluruhan video, hanya bagian tentang struct Node dan alokasi memori
|
||||
- [ ] Linked List vs Array:
|
||||
|
@ -535,12 +516,14 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stack (video)](https://www.coursera.org/lecture/data-structures/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Tidak akan diterapkan. Implementasi dengan array itu sepele
|
||||
|
||||
- ### Queue
|
||||
- Queue (Antrean)
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implementasikan menggunakan linked-list, dengan tail pointer:
|
||||
- enqueue(value) - menambah nilai pada posisi di ekor
|
||||
- dequeue() - mengembalikan nilai dan menghapus elemen yang paling baru ditambahkan (depan)
|
||||
|
@ -566,6 +549,7 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Lanjutan) Pengacakan: Universal & Hashing Sempurna (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Lanjutan) Hash sempurna (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Kursus Online:
|
||||
- [ ] [Tabel Hash Inti (video)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-hash-tables-m7UuP)
|
||||
|
@ -588,6 +572,7 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- [ ] [Pencarian Biner (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Pencarian Biner (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implementkan:
|
||||
- pencarian biner (pada susunan bilangan bulat yang diurutkan)
|
||||
- pencarian biner menggunakan rekursi
|
||||
|
@ -641,6 +626,9 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- dalam urutan (DFS: kiri, sendiri/self, kanan)
|
||||
- pasca urutan (DFS: kiri, kanan, sendiri/self)
|
||||
- pra urutan (DFS: sendiri/self, kiri, kanan)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Ulasan Binary Search Tree (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -691,6 +679,7 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- [ ] [MIT: Heaps dan Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Kuliah 24: Antrian Prioritas (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Menerapkan sebuah max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - digunakan untuk memasukkan
|
||||
|
@ -755,6 +744,14 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
|
|||
- [ ] [Implementasi (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementasi (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implementasi:
|
||||
- [ ] Mergesort: O(n log n) rata-rata dan kasus terburuk
|
||||
- [ ] Quicksort: O(n log n) kasus rata-rata
|
||||
|
@ -818,6 +815,8 @@ Graf (Graphs) dapat digunakan untuk merepresentasikan banyak masalah dalam ilmu
|
|||
- [ ] [CS 61B 2014: Graphs berbobot (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Algoritma Serakah: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Komponen yang Sangat Terhubung Algoritma Graphs Algoritma Kosaraju (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Kursus Coursera Penuh:
|
||||
- [ ] [Algoritma pada Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1201,7 +1200,7 @@ Graf (Graphs) dapat digunakan untuk merepresentasikan banyak masalah dalam ilmu
|
|||
|
||||
- [ ] Seri video subjek pendek berdurasi 2-3 menit (23 video)
|
||||
- [Video](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Seri video subjek pendek berdurasi 2-5 menit - Michael Sambol (38 video):
|
||||
- [ ] Seri video subjek pendek berdurasi 2-5 menit - Michael Sambol (40 video):
|
||||
- [Video](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Video Sedgewick - Algoritma I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Video Sedgewick - Algoritma II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1626,6 +1625,7 @@ Anda tidak pernah benar-benar selesai.
|
|||
- [Aduni - Algoritma - Kuliah 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [Pengantar Pencarian Biner Dan Red-Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- Dalam praktek:
|
||||
|
@ -1665,6 +1665,7 @@ Anda tidak pernah benar-benar selesai.
|
|||
- [MIT 6.851 - Model Hirarki Memori (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -64,27 +64,6 @@ Traduzione in Italiano a Cura di [@volpoh](https://github.com/volpoh)
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Diventa uno sponsor</strong> e supporta Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Un ringraziamento speciale a:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -596,6 +575,7 @@ Ma non dimenticare di esercitarti con i problemi, anche durante lo studio!
|
|||
- [Complessità Computazionale: Sezione 1 (Articolo in Inglese)](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Complessità Computazionale: Sezione 2 (Articolo in Inglese)](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat-Sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
Bene, direi che può bastare.
|
||||
|
||||
|
@ -641,6 +621,7 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
- [ ] [Liste Linkate Singolarmente (Video in Inglese)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [CS 61B - Linked Lists 1 (Video in Inglese)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (Video in Inglese)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (Video in Inglese)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- non il video intero, ma solo nozioni sulla struttura del nodo e l'allocazione della memoria
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -673,11 +654,13 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (Video in Inglese)](https://www.coursera.org/lecture/data-structures/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Non saranno implementati. Esercitarsi con l'array è quasi banale.
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (Video in Inglese)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Buffer Circolare/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implementazione usando le linked list, con puntatore alla coda:
|
||||
- enqueue(value) - aggiunge un valore alla posizione della coda
|
||||
- dequeue() - returna il valore aggiunto per ultimo e lo rimuove
|
||||
|
@ -703,6 +686,7 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
- [ ] [PyCon 2017: Dizionario, ma ancora Più Potente (Video in Inglese)](https://www.youtube.com/watch?v=66P5FMkWoVU)
|
||||
- [ ] [(Avanzato) Randomizzazione: Universale & Hashing Perfetto (Video in Inglese)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Avanzato) L'hashing perfetto (Video in Inglese)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Corsi Online:
|
||||
- [ ] [Core Hash Tables (Video in Inglese)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-hash-tables-m7UuP)
|
||||
|
@ -726,6 +710,7 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
- [ ] [Ricerca Binaria (Video in Inglese)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [dettagli](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [progetto](https://leetcode.com/discuss/general-discussion/786126/python-powerful-ultimate-binary-search-template-solved-many-problems)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implementazione:
|
||||
- ricerca binaria (su array ordinati di interi)
|
||||
- ricerca binaria usando la ricorsione
|
||||
|
@ -779,6 +764,9 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
- inorder (DFS: sinistra, se stesso, destra)
|
||||
- postorder (DFS: sinistra, destra, se stesso)
|
||||
- preorder (DFS: se stesso, sinistra, destra)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Alberi Binari di Ricerca: BSTs
|
||||
- [ ] [Review Alberi Binari di Ricerca (Video in Inglese)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -824,6 +812,7 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
- [ ] [MIT: Heaps e Ordinamento Heap (Video in Inglese)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lezione 24: Code di Priorità (Video in Inglese)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Costruire un Heap (max-heap) (Video in Inglese)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implementa un max-heap:
|
||||
- [ ] insert - inserisci un valore
|
||||
- [ ] sift_up - neccessario per l'inserimento
|
||||
|
@ -888,6 +877,14 @@ per testare la tua capacità nell'identificare la complessità del runtime di di
|
|||
- [ ] [Implementazione (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementazione (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implementazione:
|
||||
- [ ] Mergesort: O(n log n) caso medio e peggiore
|
||||
- [ ] Quicksort O(n log n) caso medio
|
||||
|
@ -950,6 +947,8 @@ I grafi possono essere usati per rappresentare molti problemi in informatica, pe
|
|||
- [ ] [CS 61B 2014: Grafi Pesati (Video in Inglese)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Algoritmi Greedy: Alberi Ricoprenti Minimi (Video in Inglese)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Componenti Legati Strettamente, Algoritmo di Kosaraju e Algoritmi per Grafi (Video in Inglese)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Corsi di Coursera Completi:
|
||||
- [ ] [Algorithms on Graphs (Video in Inglese)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1209,7 +1208,7 @@ I grafi possono essere usati per rappresentare molti problemi in informatica, pe
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject video (23 video)
|
||||
- [video](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject video - Michael Sambol (38 video):
|
||||
- [ ] Series of 2-5 minutes short subject video - Michael Sambol (40 video):
|
||||
- [video](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick video - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick video - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1700,6 +1699,7 @@ You're never really done.
|
|||
- [Aduni - Algorithms - Lezione 5 (Video in Inglese)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1740,6 +1740,7 @@ You're never really done.
|
|||
- [MIT 6.851 - Memory Hierarchy Models (Video in Inglese)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -39,27 +39,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -449,6 +428,7 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [計算の複雑さ:セクション1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [計算の複雑さ:セクション2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [チートシート](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
講義の中には数学的にも余裕がある場合は、下にジャンプして
|
||||
|
@ -498,6 +478,7 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [ ] [単独連結されたリスト(ビデオ)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - 連結リスト1(動画)](https://www.youtube.com/watch?v=htzJdKoEmO0&list=PL4BBB74C7D2A1049C&index=7)
|
||||
- [ ] [CS 61B - 連結リスト2(動画)](https://www.youtube.com/watch?v=-c4I3gFYe3w&index=8&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [Cコード(動画)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
ビデオ全体ではなく、ノード構造体とメモリ割り当てに関する部分だけです。
|
||||
- [ ] 連結リスト Vs 配列:
|
||||
|
@ -530,6 +511,7 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- ### スタック
|
||||
- [ ] [Stacks(video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [スタックの使用 Last-In First-Out(ビデオ)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-stacks-last-first-out/149042/177120-4.html)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] 実装されません。配列で実装するのは簡単です。
|
||||
|
||||
- ### キュー
|
||||
|
@ -537,6 +519,7 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [ ] [キュー(video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [環状バッファ/ FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [優先度つきキュー(ビデオ)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Priority-queues-deques/149042/177123-4.html)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] テールポインタ付き連結リストを使って実装する:
|
||||
- enqueue(value) - テールの位置に値を追加する
|
||||
- dequeue() - 値を返し、少なくとも最近追加された要素を削除する(前面)
|
||||
|
@ -588,6 +571,7 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [ ] [二分探索(動画)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [二分探索(ビデオ)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [詳細](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] 実装:
|
||||
- 二分探索(ソートされた整数の配列)
|
||||
- 再帰を利用した二分探索
|
||||
|
@ -640,6 +624,9 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- inorder(DFS:left、self、right)
|
||||
- postorder(DFS:left、right、self)
|
||||
- preorder(DFS:自己、左、右)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### 二分探索木:BST
|
||||
- [ ] [二分探索木レビュー(動画)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -687,6 +674,7 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [ ] [MIT:ヒープとヒープソート(ビデオ)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B講義24:優先度つきキュー(ビデオ)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [線形時間BuildHeap(max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] 最大ヒープを実装する:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - 挿入に必要
|
||||
|
@ -733,6 +721,14 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [ ] [実装(C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [実装(Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] 実装:
|
||||
- [ ] Mergesort:O(n log n)平均と最悪の場合
|
||||
- [ ] Quicksort O(n log n)平均の場合
|
||||
|
@ -792,6 +788,8 @@ Anki形式の私のフラッシュカードデータベース:https://ankiweb.
|
|||
- [ ] [CS 61B 2014:加重グラフ(ビデオ)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [欲張りアルゴリズム:最小スパニング木(ビデオ)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [強固に接続されたコサラジュのアルゴリズムグラフアルゴリズム(ビデオ)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- フルcourseraコース:
|
||||
- [ ] [グラフのアルゴリズム(ビデオ)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1246,7 +1244,7 @@ Skienaの本(下記の書籍の節を参照)と面接の書籍
|
|||
|
||||
- [ ] 2〜3分短編ビデオシリーズ(23ビデオ)
|
||||
- [動画](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] 2〜5分の短編シリーズビデオ - Michael Sambol(38ビデオ)
|
||||
- [ ] 2〜5分の短編シリーズビデオ - Michael Sambol(40ビデオ)
|
||||
- [動画](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1662,6 +1660,7 @@ Skienaの本(下記の書籍の節を参照)と面接の書籍
|
|||
- [Aduni - アルゴリズム - 講義5(ビデオ)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [黒い木](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [バイナリサーチとレッドブラック木の紹介](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3の検索木**
|
||||
- 実際には:
|
||||
|
@ -1701,6 +1700,7 @@ Skienaの本(下記の書籍の節を参照)と面接の書籍
|
|||
- [ ] [MIT 6.851 - メモリ階層モデル(ビデオ)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- キャッシュに気付かないB木、非常に興味深いデータ構造
|
||||
- 最初の37分は非常に技術的であり、スキップすることができます(Bはブロックサイズ、キャッシュラインサイズです)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D木
|
||||
|
|
|
@ -51,27 +51,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -517,6 +496,7 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- [ភាពស្មុគស្មាញនៃការគណនា៖ ផ្នែកទី ១](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [ភាពស្មុគស្មាញនៃការគណនា៖ ផ្នែកទី ២](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [សន្លឹកជំនួយ](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
---
|
||||
|
||||
|
@ -563,6 +543,7 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- [ ] [Singly Linked Lists (វីដេអូ)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists ១ (វីដេអូ)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists ២ (វីដេអូ)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [កូដ C (វីដេអូ)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- មិនមែនវីដេអូទាំងមូលទេគឺគ្រាន់តែជាផ្នែកអំពីរចនាសម្ព័ន្ធ (Data Structure) និងការបែងចែក Memory ។
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -596,11 +577,13 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stack (វីដេអូ)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] នឹងមិនអនុវត្តទេ។ ការអនុវត្តជាមួយ Array គឺមិនសំខាន់។
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (វីដេអូ)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] ប្រើ linked-list ដែលមានភ្ជាប់ជាមួយទ្រនិចនៅកន្ទុយ៖
|
||||
- enqueue(តម្លៃ) - បន្ថែមតម្លៃនៅទីតាំងនៅកន្ទុយ
|
||||
- dequeue() - ត្រឡប់តម្លៃនិងយកធាតុដែលបានបន្ថែមថ្មីៗចេញ (ផ្នែកខាងមុខ)
|
||||
|
@ -625,6 +608,7 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- [ ] [PyCon 2010: វចនានុក្រមដ៏អស្ចារ្យ (វីដេអូ)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(កម្រិតខ្ពស់) Randomization: Universal & Perfect Hashing (វីដេអូ)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(ជឿនលឿន) Perfect hashing (វីដេអូ)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] វគ្គសិក្សាអនឡាញ៖
|
||||
- [ ] [Core Hash Tables (វីដេអូ)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -650,6 +634,7 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- [ ] [Binary search (វីដេអូ)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary search (វីដេអូ)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [លម្អិត](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] អនុវត្ត៖
|
||||
- Binary search (នៅលើជួរអារេនៃចំនួនគត់)
|
||||
- Binary search ដោយប្រើការហៅខ្លួនឯង
|
||||
|
@ -704,6 +689,9 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- inorder (DFS: ឆ្វេង, ខ្លួនឯង, ស្តាំ)
|
||||
- postorder (DFS: ឆ្វេង, ស្តាំ, ខ្លួនឯង)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [ការពិនិត្យឡើងវិញ Binary Search Tree (វីដេអូ)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -751,6 +739,7 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- [ ] [MIT: Heaps និង Heap Sort (វីដេអូ)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B មេរៀន 24: Priority Queues (វីដេអូ)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] ការអនុវត្ត max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - ត្រូវការសំរាប់បញ្ចូល
|
||||
|
@ -818,6 +807,14 @@ Data Structure ទាំងអស់ដែលខ្ញុំធ្លាប់
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] អនុវត្ត:
|
||||
- [ ] Mergesort: O(n log n) ករណីមធ្យម និង អាក្រក់បំផុត
|
||||
- [ ] Quicksort O(n log n) ករណីមធ្យម
|
||||
|
@ -883,6 +880,8 @@ Graphs អាចត្រូវបានប្រើដើម្បីបង្
|
|||
- [ ] [CS 61B 2014: Weighted graphs (វីដេអូ)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (វីដេអូ)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (វីដេអូ)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- វគ្គសិក្សា Coursera:
|
||||
- [ ] [Algorithms on Graphs (វីដេអូ)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1267,7 +1266,7 @@ Graphs អាចត្រូវបានប្រើដើម្បីបង្
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 វីដេអូ)
|
||||
- [វីដេអូ](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 វីដេអូ):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 វីដេអូ):
|
||||
- [វីដេអូ](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [វីដេអូ Sedgewick - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [វីដេអូ Sedgewick - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1697,6 +1696,7 @@ Mock Interviews:
|
|||
- [Aduni - Algorithms - Lecture 5 (វីដេអូ)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- ក្នុងការអនុវត្ត ៖
|
||||
|
@ -1736,6 +1736,7 @@ Mock Interviews:
|
|||
- [MIT 6.851 - Memory Hierarchy Models (វីដេអូ)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- រៀនពី cache-oblivious B-Trees, data structures
|
||||
- ៣៧ នាទីដំបូងគឺបច្ចេកទេសហើយប្រហែលជាអាចរំលងចោល (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -56,27 +56,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -552,6 +531,7 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## 자료구조
|
||||
|
||||
|
@ -593,6 +573,7 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [ ] [단일 연결 리스트 (영상)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - 연결 리스트 1 (영상)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - 연결 리스트 2 (영상)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- 전체 영상은 아니고, 노드 구조와 메모리 할당에 대한 부분입니다.
|
||||
- [ ] 연결 리스트 vs 배열:
|
||||
|
@ -624,11 +605,13 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
|
||||
- ### 스택
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### 큐
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)05_04-priorityQueuesAndDeques.mp4)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] tail 포인터가 있는 연결 리스트를 사용하여 구현하기:
|
||||
- enqueue(value) - tail이 가리키는 곳에 value를 추가한다
|
||||
- dequeue() - value를 반환하고 가장 최근에 추가된 원소(front)를 제거한다.
|
||||
|
@ -653,6 +636,7 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] 온라인 강의들:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -675,6 +659,7 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [자세한 내용](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] 구현:
|
||||
- (정수가 정렬된 배열에서) 이진 탐색
|
||||
- 재귀를 사용한 이진 탐색
|
||||
|
@ -727,6 +712,9 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- 중위(inorder) (DFS: 왼쪽, 자신, 오른쪽)
|
||||
- 후위(postorder) (DFS: 왼쪽, 오른쪽, 자신)
|
||||
- 전위(preorder) (DFS: 자신, 왼쪽, 오른쪽)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### 이진 탐색 트리 (BST)
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -772,6 +760,7 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [ ] [MIT: 힙과 힙 정렬 (영상)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: 우선순위 큐 (영상)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [선형 시간에 힙 만들기 (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] max-heap 구현하기:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - `insert` 하려면 필요
|
||||
|
@ -837,6 +826,14 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [ ] [구현 (C언어)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [구현 (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] 구현:
|
||||
- [ ] 병합 정렬: 평균과 최악의 경우 O(n log n)
|
||||
- [ ] 퀵 정렬: 평균적인 경우 O(n log n)
|
||||
|
@ -900,6 +897,8 @@ Anki 형식의 내 요약집 데이터베이스: https://ankiweb.net/shared/info
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1286,7 +1285,7 @@ Skiena의 책(아래의 책 섹션 참조)과 인터뷰 책에서 더 많은 그
|
|||
|
||||
- [ ] 2-3분 분량의 주제별 짧은 영상 시리즈 (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] 2-5분 분량의 주제별 짧은 영상 시리즈 - Michael Sambol (38 videos):
|
||||
- [ ] 2-5분 분량의 주제별 짧은 영상 시리즈 - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1720,6 +1719,7 @@ Challenge repos:
|
|||
- [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1758,6 +1758,7 @@ Challenge repos:
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
- ### k-D Trees
|
||||
- great for finding number of points in a rectangle or higher dimension object
|
||||
|
|
|
@ -48,27 +48,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
## Co to jest?
|
||||
|
@ -504,6 +483,7 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Ściągawka](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## Struktury danych
|
||||
|
||||
|
@ -545,6 +525,7 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- [ ] [Singly Linked Lists (wideo)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists 1 (wideo)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (wideo)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (wideo)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation.
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -576,11 +557,13 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
|
||||
- ### Stos
|
||||
- [ ] [Stacks (wideo)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### Kolejka
|
||||
- [ ] [Queue (wideo)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -605,6 +588,7 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (wideo)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Zaawansowane) Randomization: Universal & Perfect Hashing (wideo)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Zaawansowane) Perfect hashing (wideo)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Kursy online:
|
||||
- [ ] [Core Hash Tables (wideo)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -627,6 +611,7 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- [ ] [Binary Search (wideo)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (wideo)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -676,6 +661,9 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs - drzewa binarne
|
||||
- [ ] [Binary Search Tree Review (wideo)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -723,6 +711,7 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- [ ] [MIT: Heaps and Heap Sort (wideo)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (wideo)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -788,6 +777,14 @@ Napisz kod na tablicy lub papierze, a nie na komputerze. Testuj z niektórymi pr
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -851,7 +848,9 @@ Grafy mogą być wykorzystane do przedstawienia wielu problemów w informatyce,
|
|||
- [ ] [CS 61B 2014: Weighted graphs (wideo)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (wideo)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (wideo)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Pełny kurs Coursera:
|
||||
- [ ] [Algorithms on Graphs (wideo)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
||||
|
@ -1240,7 +1239,7 @@ Trie to drzewo węzłów, które obsługuje operacje Znajdź i Wstaw [etc (...)]
|
|||
|
||||
- [ ] Seria 2-3 minutowych, krótkich filmów tematycznych (23 wideo)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Seria 2–5 minutowych, krótkich filmów tematycznych - Michael Sambol (38 wideo):
|
||||
- [ ] Seria 2–5 minutowych, krótkich filmów tematycznych - Michael Sambol (40 wideo):
|
||||
- [Wideo](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorytmy I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorytmy II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1673,6 +1672,7 @@ Tak na prawdę nigdy nie skończyłeś.
|
|||
- [Aduni - Algorithms - Lecture 5 (wideo)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1713,6 +1713,7 @@ Tak na prawdę nigdy nie skończyłeś.
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -44,27 +44,6 @@ Traduções em progresso:
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -533,6 +512,7 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/) (Complexidade Computacional: Seção 1)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/) (Complexidade Computacional: Seção 2)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/) (Folha de Consultas)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
Se alguma das aulas forem muito "matemáticas", você pode pular para o final e
|
||||
|
@ -578,6 +558,7 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists) (listas ligadas individualmente - vídeo)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://www.youtube.com/watch?v=htzJdKoEmO0&list=PL4BBB74C7D2A1049C&index=7) (CS 61B - Listas Ligadas 1 - vídeo)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://www.youtube.com/watch?v=-c4I3gFYe3w&index=8&list=PL4BBB74C7D2A1049C) (CS 61B - Listas Ligadas 2 - vídeo)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo) (Código em C - vídeo)
|
||||
- não o vídeo inteiro, apenas as partes sobre estrutura de nodes (nós) e alocação de memória.
|
||||
- [ ] Listas Ligadas vs Arrays:
|
||||
|
@ -609,11 +590,13 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Não implementarei. Implementar com array é trivial.
|
||||
|
||||
- ### Queue (Fila)
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer) (Buffer circular/Primeiro a entrar, último a sair)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)(Buffer circular/Primeiro a entrar, último a sair)
|
||||
- [ ] Implementar usando lista ligada, com ponteiro de cauda (aponta para o último elemento de uma lista):
|
||||
- enqueue(valor) - adiciona "valor" na posição na cauda (final da lista)
|
||||
- dequeue() - retorna um valor e remove o elemento menos recentemente adicionado (início da lista))
|
||||
|
@ -638,6 +621,7 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68) (PyCon 2010: O Poderoso Dicionário (vídeo)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11) ((Avançado) Randomização: Hashing Perfeito & Universal - vídeo)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4) ((Avançado) Hashing perfeito - vídeo)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Cursos Online:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables) (Fundamentos de Tabelas Hash - vídeo)
|
||||
|
@ -660,6 +644,7 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno) (Busca Binária - vídeo)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search) (Busca Binária - vídeo)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/) (detalhes)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implementar:
|
||||
- busca binária (em um array ordenado de números inteiros)
|
||||
- busca binária usando recursividade
|
||||
|
@ -713,6 +698,9 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- em-ordem ou ordem simétrica(na busca em profundidade (ou DFS): percorre subárvore esquerda em ordem simétrica (em-ordem), visita a raiz, percorre subárvore direita em ordem simétrica)
|
||||
- pós-ordem (na busca em profundidade (ou DFS): percorre subárvore esquerda em pós-ordem, percorre subárvore direita em pós-ordem, visita a raiz)
|
||||
- pré-ordem (na busca em profundidade (ou DFS): visita a raiz, percorre subárvore esquerda em pré-ordem, percorre subárvore direita em pré-ordem)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Árvores binárias de busca: ABB
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6) (Revisão de Árvores Binárias de Busca - vídeo)
|
||||
|
@ -760,6 +748,7 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb) (MIT: Memórias Dinâmias e heapsort - vídeo)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C) (CS (Ciência da Computação) 61B Aula 24: Filas Prioritárias - vídeo)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw) (BuildHeap em Tempo Linear (heap máxima))
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implementar uma heap máxima (max-heap):
|
||||
- [ ] insert
|
||||
- [ ] sift_up - necessário insert
|
||||
|
@ -806,6 +795,14 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c) (Implementação em C)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py) (Implementação em Python)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implementar:
|
||||
- [ ] Mergesort: O(n log n) caso comum e pior caso
|
||||
- [ ] Quicksort O(n log n) caso comum
|
||||
|
@ -865,6 +862,8 @@ Grafos podem ser usados para representar muitos problemas na Ciência da Computa
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19) (CS 61B 2014: Grafos Ponderados - vídeo)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp) (Algoritmos Gulosos: Árvore de Extensão Mínima - vídeo)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw) (Componentes Fortemente Conectados, Algoritmo de Kosaraju, Algoritmo de Grafo - vídeo)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Curso Completo do Coursera:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome) (Algoritmos em Grafos - vídeo)
|
||||
|
@ -1309,7 +1308,7 @@ Você ganhará mais prática com grafos no livro do Skiena (veja a seção de li
|
|||
|
||||
- [ ] Séries de vídeos curtos (2 - 3 minutos) sobre o assunto (23 vídeos)
|
||||
- [Vídeos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Séries de vídeos curtos (2 - 5 minutos) sobre o assunto - Michael Sambol (38 vídeos):
|
||||
- [ ] Séries de vídeos curtos (2 - 5 minutos) sobre o assunto - Michael Sambol (40 vídeos):
|
||||
- [Vídeos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1680,6 +1679,7 @@ Esses tópicos provavelmente não aparecerão em uma entrevista, mas eu adicione
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5) (Aduni - Algoritmos - Aula 5 - vídeo)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree) (Árvore Rubro-Negra)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/) (Uma Introdução a Busca Binária E Árvore Rubro-Negra)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **Árvores de busca 2-3**
|
||||
- Ná prática:
|
||||
|
@ -1719,6 +1719,7 @@ Esses tópicos provavelmente não aparecerão em uma entrevista, mas eu adicione
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf) (MIT 6.851 - Modelos de Hierarquia de Memória - vídeo)
|
||||
- cobre Árvores B de cache-alheio (do Inglês, cache-oblivious), estruturas de dados muito interessantes
|
||||
- os primeiros 37 minutos são bem técnicos, pode ser pulado (B é tamanho de bloco, tamanho de linha de cache)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### Árvores k-D
|
||||
|
|
|
@ -7,27 +7,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Особые благодарности:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -586,6 +565,7 @@ Google не возьмёт тебя на работу.
|
|||
- [Вычислительная сложность: Часть 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Вычислительная сложность: Часть 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Шпаргалка](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
Если в некоторых лекциях слишком много математики, вы можете ниже найти и посмотреть
|
||||
лекции по дискретной математике для получения базовых знаний.
|
||||
|
@ -633,6 +613,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] Описание:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- не все видео целиком, только кусочки об узлах и распределении памяти.
|
||||
- [ ] Связные списки vs Массивы:
|
||||
|
@ -667,6 +648,7 @@ Google не возьмёт тебя на работу.
|
|||
- ### Стек
|
||||
- [ ] [Стек (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [Использование стека Last-In First-Out (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-stacks-last-first-out/149042/177120-4.html)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Не будет реализован. Реализация с помощью массива очевидна.
|
||||
|
||||
- ### Очередь
|
||||
|
@ -674,6 +656,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [Очередь (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [Очередь с приоритетом (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Priority-queues-deques/149042/177123-4.html)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Реализация с использованием связанного списка и указателя на последний элемент(tail):
|
||||
- enqueue(value) - добавляет элемент в конец очереди
|
||||
- dequeue() - возвращает значение и удаляет из очереди последний добавленный элемент(front)
|
||||
|
@ -698,6 +681,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Онлайн курсы:
|
||||
- [ ] [Understanding Hash Functions (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Understanding-hash-functions/149042/177126-4.html)
|
||||
|
@ -724,6 +708,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [Бинарный поиск (видео на ютубе)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Бинарный поиск (видео на khanacademy)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [Длинная статья с деталями](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Реализация:
|
||||
- бинарный поиск (на отсортированном числовом массиве)
|
||||
- бинарный поиск с использованием рекурсии
|
||||
|
@ -778,6 +763,9 @@ Google не возьмёт тебя на работу.
|
|||
- in-order (DFS: левый, вершина, правый)
|
||||
- post-order (DFS: левый, правый, вершина)
|
||||
- pre-order (DFS: вершина, левый, правый)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Бинарное дерево поиска (BST: Binary search trees)
|
||||
- [ ] [Обзор бинарного дерева поиска (видео)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -825,6 +813,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [MIT: Кучи и пирамидальная сортировка (видео)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Лекция 24: Приоритетные очереди (видео)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Построение кучи за линейное время (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Реализация max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - необходима для вставки
|
||||
|
@ -871,6 +860,14 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [Реализация (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Реализация (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Реализация:
|
||||
- [ ] Сортировка слиянием: O(n log n) средний и худший случаи
|
||||
- [ ] Быстрая сортировка O(n log n) средний случай
|
||||
|
@ -927,6 +924,8 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [CS 61B 2014: Взвешенные графы (видео)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Жадные алгоритмы: Минимальное остовное дерево (видео)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Сильно связные компоненты, Алгоритм Косарайю, Алгоритмы на графах (видео)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Полный курс на Coursera:
|
||||
- [ ] [Алгоритмы на графах (видео)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1289,7 +1288,7 @@ Google не возьмёт тебя на работу.
|
|||
|
||||
- [ ] Серия 2-3 минутных короткие видео по темам (23 видео)
|
||||
- [Видео](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Серия коротких 2-5 минутных видео - Michael Sambol (38 видео):
|
||||
- [ ] Серия коротких 2-5 минутных видео - Michael Sambol (40 видео):
|
||||
- [Видео](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1713,6 +1712,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1748,6 +1748,7 @@ Google не возьмёт тебя на работу.
|
|||
- [ ] [MIT 6.851 - Модели Иерархии Памяти (видео)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- включает кэш-агностические B-Деревья, крайне интересные структуры данных
|
||||
- первые 37 минут очень технические, можно пропустить (B это размер блока, размер кэша)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
- ### k-D Деревья
|
||||
- прекрасны для нахождения всех точек в прямоугольнике или более многомерном объекте
|
||||
|
|
|
@ -31,27 +31,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -513,6 +492,7 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
If some of the lectures are too mathy, you can jump down to the bottom and
|
||||
|
@ -557,6 +537,7 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- [ ] Description:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation.
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -588,11 +569,13 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -617,6 +600,7 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -639,6 +623,7 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -692,6 +677,9 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -739,6 +727,7 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -785,6 +774,14 @@ There are a lot of distractions that can take up valuable time. Focus and concen
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -843,6 +840,8 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1283,7 +1282,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1651,6 +1650,7 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1690,6 +1690,7 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -54,27 +54,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -531,6 +510,7 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## Veri Yapıları
|
||||
|
||||
|
@ -572,6 +552,7 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- tüm video değil, Node yapısı ve bellek ayırma için olan bölümler.
|
||||
- [ ] Bağlı Listeler vs Diziler:
|
||||
|
@ -603,11 +584,13 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
|
||||
- ### Yığın
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Uygulamayın. Diziyle gerçekleştirmek önemsiz.
|
||||
|
||||
- ### Kuyruk
|
||||
- [ ] [Kuyruk (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Bağlı listeyle birlikte kuyruk işaretçisi kullanarak uygulayın:
|
||||
- enqueue(value) - kuyruktaki pozisyona değer ekler
|
||||
- dequeue() - değeri döndürür ve en son eklenen elemanı kaldırır (ön)
|
||||
|
@ -633,6 +616,7 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- [ ] [PyCon 2017: The Dictionary Even Mightier (video)](https://www.youtube.com/watch?v=66P5FMkWoVU)
|
||||
- [ ] [(İleri Seviye) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(İleri Seviye) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Kurslar:
|
||||
- [ ] [Hash Fonksiyonlarını Anlama (video)](https://www.lynda.com/Developer-Programming-Foundations-tutorials/Understanding-hash-functions/149042/177126-4.html)
|
||||
|
@ -659,6 +643,7 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Uygulama:
|
||||
- binary search (sıralanmış tam sayı dizisine)
|
||||
- binary search (rekürsif kullanarak)
|
||||
|
@ -710,6 +695,10 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- inorder (DFS: sol, kendisi, sağ)
|
||||
- postorder (DFS: sol, sağ, kendisi)
|
||||
- preorder (DFS: kendisi, sol, sağ)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
|
||||
- ### İkili arama ağaçları: BSTs
|
||||
- [ ] [İkili Arama Ağacı İncelemesi (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -755,6 +744,7 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Max-heap uygulaması:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - eklemek için gerekli
|
||||
|
@ -819,6 +809,14 @@ Kodları beyaz tahtaya ya da kağıda yazın, bilgisayara değil. Örnek girdile
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Uygulama:
|
||||
- [ ] Mergesort: O(n log n) ortalama ve en kötü durum
|
||||
- [ ] Quicksort O(n log n) ortalama durum
|
||||
|
@ -882,6 +880,8 @@ Graflar, bilgisayar bilimlerinde birçok sorunu temsil etmek için kullanılabil
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Kursu:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1254,7 +1254,7 @@ Graflar, bilgisayar bilimlerinde birçok sorunu temsil etmek için kullanılabil
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1702,6 +1702,7 @@ You're never really done.
|
|||
- [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1742,6 +1743,7 @@ You're never really done.
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
|
@ -56,24 +56,6 @@
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>算法秘籍,模版刷題效率翻倍,上岸大廠必備</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>谷歌工程師們濃縮多年刷題經驗,嘔心瀝血總結出的最強算法題型詳解,提煉精華模版,由淺入深,簡單易懂。助你一掃刷題煩惱,早日上岸,圓夢大廠。</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -500,6 +482,7 @@
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## 資料結構
|
||||
- ### 陣列
|
||||
|
@ -542,6 +525,7 @@
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- 沒有完整的code,裡面只包含了用struct實作節點的方式以及其記憶體配置。
|
||||
- [ ] Linked List vs 陣列:
|
||||
|
@ -574,6 +558,7 @@
|
|||
- ### Stack(堆疊)
|
||||
- [ ] [Stacks(影片)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [使用Stacks先進後出(Last-In First-Out)(影片)]()
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] 無須實作,可以用陣列實作,但這樣太過簡單了。
|
||||
|
||||
- ### Queue(佇列)
|
||||
|
@ -581,6 +566,7 @@
|
|||
- [ ] [Queue(影片)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [Priority Queues(影片)]()
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] 使用linked list實作,包含末端指標(tail pointer):
|
||||
- enqueue(value) - 在queue末端加入元素
|
||||
- dequeue() - 刪除當時queue中最早進入的元素(意即queue中第一個元素),並且回傳該元素的值。
|
||||
|
@ -600,6 +586,7 @@
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (影片)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (影片)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (影片)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
- [ ] 線上開放式課程:
|
||||
- [ ] [Understanding Hash Functions (影片)]()
|
||||
- [ ] [Using Hash Tables (影片)]()
|
||||
|
@ -625,6 +612,7 @@
|
|||
- [ ] [二分搜尋法(影片)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [二分搜尋法(影片)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [細節](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] 實作:
|
||||
- 二分搜尋法 (對已經排列好的數列)
|
||||
- 用遞迴(recursion)的方法實作二分搜尋法
|
||||
|
@ -674,6 +662,9 @@
|
|||
- 中序 (DFS: 左子樹、根、右子樹)
|
||||
- 後序 (DFS: 左子樹、右子樹、根)
|
||||
- 前序 (DFS: 根、左子樹、右子樹)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### 二元搜尋樹Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Review (影片)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -721,6 +712,7 @@
|
|||
- [ ] [MIT: Heaps and Heap Sort (影片)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (影片)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] 實作max heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -786,6 +778,14 @@
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] 實作:
|
||||
- [ ] 合併排序: 平均與最糟都是O(n log n)
|
||||
- [ ] 快速排序: 平均O(n log n)
|
||||
|
@ -848,6 +848,8 @@
|
|||
- [ ] [CS 61B 2014: Weighted graphs (影片)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (影片)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (影片)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- 完整Coursera課程:
|
||||
- [ ] [Algorithms on Graphs (影片)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1230,7 +1232,7 @@
|
|||
|
||||
- [ ] 2-3分鐘快速複習影片系列(23個影片)
|
||||
- [影片](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] 2-5分鐘快速複習影片系列-Michael Sambol (38個影片)
|
||||
- [ ] 2-5分鐘快速複習影片系列-Michael Sambol (40個影片)
|
||||
- [影片](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1619,6 +1621,7 @@ Coding面試題目影片:
|
|||
- [Aduni - Algorithms - Lecture 5 (影片)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3搜尋樹**
|
||||
- 實際上:
|
||||
|
@ -1655,6 +1658,7 @@ Coding面試題目影片:
|
|||
- [MIT 6.851 - Memory Hierarchy Models (影片)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- 涵蓋了cache-oblivious B樹,非常有趣的資料結構
|
||||
- 前37分鐘非常技術性,可以跳過(B代表block大小、cache line大小)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D樹
|
||||
|
|
|
@ -57,27 +57,6 @@ Microsoft.
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -560,6 +539,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
If some of the lectures are too mathy, you can jump down to the bottom and
|
||||
|
@ -604,6 +584,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] Description:
|
||||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- not the whole video, just portions about Node struct and memory allocation.
|
||||
- [ ] Linked List vs Arrays:
|
||||
|
@ -635,11 +616,13 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Will not implement. Implementing with array is trivial.
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Implement using linked-list, with tail pointer:
|
||||
- enqueue(value) - adds value at position at tail
|
||||
- dequeue() - returns value and removes least recently added element (front)
|
||||
|
@ -664,6 +647,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Online Courses:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
|
@ -686,6 +670,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Implement:
|
||||
- binary search (on sorted array of integers)
|
||||
- binary search using recursion
|
||||
|
@ -739,6 +724,9 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search trees: BSTs
|
||||
- [ ] [Binary Search Tree Review (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -786,6 +774,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Implement a max-heap:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - needed for insert
|
||||
|
@ -832,6 +821,14 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Implement:
|
||||
- [ ] Mergesort: O(n log n) average and worst case
|
||||
- [ ] Quicksort O(n log n) average case
|
||||
|
@ -891,6 +888,8 @@ Graphs can be used to represent many problems in computer science, so this secti
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Full Coursera Course:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1333,7 +1332,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|||
|
||||
- [ ] Series of 2-3 minutes short subject videos (23 videos)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (38 videos):
|
||||
- [ ] Series of 2-5 minutes short subject videos - Michael Sambol (40 videos):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1701,6 +1700,7 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 search trees**
|
||||
- In practice:
|
||||
|
@ -1740,6 +1740,7 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- covers cache-oblivious B-Trees, very interesting data structures
|
||||
- the first 37 minutes are very technical, may be skipped (B is block size, cache line size)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -17,27 +17,6 @@ Asl versiyasi: [Inglizcha](../README.md)
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -507,6 +486,7 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat varaq](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
## Ma'lumotlar tuzilmasi (Data structures)
|
||||
|
||||
|
@ -549,6 +529,7 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- [ ] [Singly Linked Lists (video)](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
|
||||
- [ ] [CS 61B - Linked Lists 1 (video)](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
|
||||
- [ ] [CS 61B - Linked Lists 2 (video)](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- butun videoni ko'rmang, Node struct va xotira ajratish (memory allocation) qismlarini ko'ring
|
||||
- [ ] Linked List va Array(massiv)lar:
|
||||
|
@ -580,11 +561,13 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/lecture/data-structures/stacks-UdKzQ)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Kodda yozmayman. Massivda stackni yaratish juda oson.
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/lecture/data-structures/queues-EShpq)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] linked-list dan foydalangan holda kodda yozaman (tail pointer bilan):
|
||||
- enqueue(value) - qiymatni queue-ni oxiriga qo'yadi
|
||||
- dequeue() - queue-ni boshidagi elementni o'chirib uni qiymatini qaytaradi
|
||||
|
@ -608,6 +591,7 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
|
||||
- [ ] Onlayn kurslar:
|
||||
- [ ] [Core Hash Tables (video)](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-hash-tables-m7UuP)
|
||||
|
@ -630,6 +614,7 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [batafsil](https://www.topcoder.com/community/competitive-programming/tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Kodda yozish:
|
||||
- binary search (tartiblangan integer massivlarida)
|
||||
- rekursiv binary search
|
||||
|
@ -681,6 +666,9 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- inorder (DFS: left, self, right)
|
||||
- postorder (DFS: left, right, self)
|
||||
- preorder (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
- ### Binary search tree lar: BST lar
|
||||
- [ ] [Binary Search Tree Tahlili (video)](https://www.youtube.com/watch?v=x6At0nzX92o&index=1&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
|
||||
|
@ -726,6 +714,7 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- [ ] [MIT: Heaps and Heap Sort (video)](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues (video)](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
|
||||
- [ ] [Linear Time BuildHeap (max-heap)](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] max-heap ni kodda yozish:
|
||||
- [ ] insert
|
||||
- [ ] sift_up - insert operatsiyasi uchun kerak
|
||||
|
@ -790,6 +779,14 @@ Birinchi kodizni doskada yoki qog'ozda yozing, kompyuterda emas. Og'zaki test qi
|
|||
- [ ] [Implementation (C)](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Implementation (Python)](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Kodda yozish:
|
||||
- [ ] Mergesort: O(n log n) o'rtacha va eng yomon holat
|
||||
- [ ] Quicksort O(n log n) o'rtacha
|
||||
|
@ -852,6 +849,8 @@ Computer science da graflar bir talay masalalarni tasvirlashda ishlatiladi. Shun
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://archive.org/details/ucberkeley_webcast_zFbq8vOZ_0k)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- To'liq Coursera kursi:
|
||||
- [ ] [Algorithms on Graphs (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1236,7 +1235,7 @@ Computer science da graflar bir talay masalalarni tasvirlashda ishlatiladi. Shun
|
|||
|
||||
- [ ] 2-3 minutlik qisqa mavzuga oid videolar seriyasi (23 video)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] 2-5 minutlik qisqa mavzuga oid videolar seriyasi - Michael Sambol (38 video):
|
||||
- [ ] 2-5 minutlik qisqa mavzuga oid videolar seriyasi - Michael Sambol (40 video):
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
- [ ] [Sedgewick Videos - Algorithms I](https://www.coursera.org/learn/algorithms-part1)
|
||||
- [ ] [Sedgewick Videos - Algorithms II](https://www.coursera.org/learn/algorithms-part2)
|
||||
|
@ -1673,6 +1672,7 @@ Hech qachon tugatgan bo'lmaymiz.
|
|||
- [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [Red-Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/thrive/articles/An%20Introduction%20to%20Binary%20Search%20and%20Red-Black%20Trees)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- **2-3 search tree-lar**
|
||||
- Amalda:
|
||||
|
@ -1711,6 +1711,7 @@ Hech qachon tugatgan bo'lmaymiz.
|
|||
- [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- keshga e'tiborsiz B-Tree-lar haqida, juda qiziq data strukturalari
|
||||
- birinchi 37 minuti juda texnik, o'tkazib yuborsangiz bo'ladi (B bu bo'lak hajmi, kesh qator hajmi)
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Tree-lar
|
||||
|
|
|
@ -34,27 +34,6 @@ Ghi chú riêng cho việc duy trì và cập nhật bản dịch tiếng Việt
|
|||
<p>
|
||||
<a href="https://github.com/sponsors/jwasham"><strong>Become a sponsor</strong> and support Coding Interview University!</a>
|
||||
</p>
|
||||
<p>
|
||||
<strong>Special thanks to:</strong>
|
||||
</p>
|
||||
<div>
|
||||
<a href="https://algo.monster/?utm_campaign=jwasham&utm_medium=referral&utm_content=coding-interview-university&utm_source=github">
|
||||
<div>
|
||||
<img src="https://d3j2pkmjtin6ou.cloudfront.net/sponsors/algo-monster.png" width="300" alt="AlgoMonster">
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
<strong>Master the technical interview without endless grinding.</strong>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<sup>Created by ex-Google engineers, AlgoMonster will help you crush the technical interview in less time
|
||||
and with fewer sleepless nights grinding away random problems. You will learn the key patterns necessary to solve
|
||||
any interview question and gain the systematic knowledge you need to prove your expertise. Be more confident
|
||||
as you walk into that interview!</sup>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<hr />
|
||||
</div>
|
||||
|
||||
|
@ -551,6 +530,7 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- [Computational Complexity: Section 1](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-1/)
|
||||
- [Computational Complexity: Section 2](https://www.topcoder.com/community/data-science/data-science-tutorials/computational-complexity-section-2/)
|
||||
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
|
||||
- [ ] [[Review] Big-O notation in 5 minutes (video)](https://youtu.be/__vX2sjlpXU)
|
||||
|
||||
|
||||
Nếu một vài bài học quá chuyên sâu về toán, bạn có thể nhảy cóc tới các bài toán riêng lẻ để có kiến thức toàn diện hơn.
|
||||
|
@ -594,6 +574,7 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- [ ] Miêu tả:
|
||||
- [ ] [Singly Linked Lists - Danh sách liên kết (video)](https://www.coursera.org/learn/data-structures/lecture/kHhgK/singly-linked-lists)
|
||||
- [ ] [CS 61B - Linked Lists - Danh sách liên kết (video)](https://www.youtube.com/watch?v=sJtJOtXCW_M&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=5)
|
||||
- [ ] [[Review] Linked lists in 4 minutes (video)](https://youtu.be/F8AbOfQwl1c)
|
||||
- [ ] [C Code (video)](https://www.youtube.com/watch?v=QN6FPiD0Gzo)
|
||||
- Không cần xem toàn bộ video, chỉ phần cấu trúc Node và cấp phát vùng nhớ.
|
||||
- [ ] Danh sách liên kết so sánh với Mảng:
|
||||
|
@ -625,11 +606,13 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
|
||||
- ### Stack
|
||||
- [ ] [Stacks (video)](https://www.coursera.org/learn/data-structures/lecture/UdKzQ/stacks)
|
||||
- [ ] [[Review] Stacks in 3 minutes (video)](https://youtu.be/KcT3aVgrrpU)
|
||||
- [ ] Sẽ không cài đặt. Cài đặt với mảng là điều hiển nhiên.
|
||||
|
||||
- ### Queue
|
||||
- [ ] [Queue (video)](https://www.coursera.org/learn/data-structures/lecture/EShpq/queue)
|
||||
- [ ] [Circular buffer/FIFO](https://en.wikipedia.org/wiki/Circular_buffer)
|
||||
- [ ] [[Review] Queues in 3 minutes (video)](https://youtu.be/D6gu-_tmEpQ)
|
||||
- [ ] Cài đặt sử dụng danh sách liên kết, áp dụng con trỏ đuôi:
|
||||
- enqueue(value) - Thêm giá trị ở đuôi
|
||||
- dequeue() - Trả về giá trị của dữ liệu được thêm vào xa nhất (thông thường là dữ liệu đầu tiên trong danh sách)
|
||||
|
@ -653,6 +636,7 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- [ ] [PyCon 2010: The Mighty Dictionary (video)](https://www.youtube.com/watch?v=C4Kc8xzcA68)
|
||||
- [ ] [(Advanced) Randomization: Universal & Perfect Hashing (video)](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
|
||||
- [ ] [(Advanced) Perfect hashing (video)](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
|
||||
- [ ] [[Review] Hash tables in 4 minutes (video)](https://youtu.be/knV86FlSXJ8)
|
||||
- [ ] Các khóa học online:
|
||||
- [ ] [Core Hash Tables - Cơ bản về bảng băm (video)](https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/m7UuP/core-hash-tables)
|
||||
- [ ] [Data Structures - Cấu trúc dữ liệu (video)](https://www.coursera.org/learn/data-structures/home/week/3)
|
||||
|
@ -673,6 +657,7 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- [ ] [Tìm kiếm nhị phân (Binary Search) - video](https://www.youtube.com/watch?v=D5SrAga1pno)
|
||||
- [ ] [Tìm kiếm nhị phân - Khan Academy (Binary Search) - video](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
|
||||
- [ ] [giải thích chi tiết](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/)
|
||||
- [ ] [[Review] Binary search in 4 minutes (video)](https://youtu.be/fDKIpRe8GW4)
|
||||
- [ ] Cài đặt:
|
||||
- Tìm kiếm nhị phân (trên mảng số nguyên đã sắp xếp)
|
||||
- Tìm kiếm nhị phân sử dụng đệ quy
|
||||
|
@ -727,6 +712,9 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- theo thứ tự (inorder) - (DFS: left, self, right)
|
||||
- nhánh con trước (postorder) - (DFS: left, right, self)
|
||||
- nhánh con sau (preorder) - (DFS: self, left, right)
|
||||
- [ ] [[Review] Breadth-first search in 4 minutes (video)](https://youtu.be/HZ5YTanv5QE)
|
||||
- [ ] [[Review] Depth-first search in 4 minutes (video)](https://youtu.be/Urx87-NMm6c)
|
||||
- [ ] [[Review] Tree Traversal (playlist) in 11 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b)
|
||||
|
||||
|
||||
- ### Cây tìm kiếm nhị phân
|
||||
|
@ -777,6 +765,7 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- [ ] [MIT: Heaps và Heap Sort - video](https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
|
||||
- [ ] [CS 61B Lecture 24: Priority Queues - video](https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C)
|
||||
- [ ] [Xây dựng Heap với thời gian tuyến tính `O(n)`](https://www.youtube.com/watch?v=MiyLo8adrWw)
|
||||
- [ ] [[Review] Heap (playlist) in 13 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6)
|
||||
- [ ] Tự cài đặt max-heap:
|
||||
- [ ] `insert`
|
||||
- [ ] `sift_up` - cần thiết cho hàm `insert`.
|
||||
|
@ -824,6 +813,14 @@ Hãy viết code trên bảng đen hoặc trên giấy. Đừng sử dụng máy
|
|||
- [ ] [Cài đặt khác dùng C](https://github.com/jwasham/practice-c/blob/master/quick_sort/quick_sort.c)
|
||||
- [ ] [Python](https://github.com/jwasham/practice-python/blob/master/quick_sort/quick_sort.py)
|
||||
|
||||
- [ ] [[Review] Sorting (playlist) in 18 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl)
|
||||
- [ ] [Quick sort in 4 minutes (video)](https://youtu.be/Hoixgm4-P4M)
|
||||
- [ ] [Heap sort in 4 minutes (video)](https://youtu.be/2DmK_H7IdTo)
|
||||
- [ ] [Merge sort in 3 minutes (video)](https://youtu.be/4VqmGXwpLqc)
|
||||
- [ ] [Bubble sort in 2 minutes (video)](https://youtu.be/xli_FI7CuzA)
|
||||
- [ ] [Selection sort in 3 minutes (video)](https://youtu.be/g-PGLbMth_g)
|
||||
- [ ] [Insertion sort in 2 minutes (video)](https://youtu.be/JU767SDMDvA)
|
||||
|
||||
- [ ] Bài tập cài đặt:
|
||||
- [ ] Sắp xếp trộn: O(n log n) trường hợp trung bình và xấu nhất
|
||||
- [ ] Sắp xếp nhanh O(n log n) trường hợp trung bình
|
||||
|
@ -880,6 +877,8 @@ Nếu bạn muốn biết thêm chi tiết trong chủ đề này, xem qua phầ
|
|||
- [ ] [CS 61B 2014: Weighted graphs (video)](https://www.youtube.com/watch?v=aJjlQCFwylA&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=19)
|
||||
- [ ] [Greedy Algorithms: Minimum Spanning Tree (video)](https://www.youtube.com/watch?v=tKwnms5iRBU&index=16&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
|
||||
- [ ] [Strongly Connected Components Kosaraju's Algorithm Graph Algorithm (video)](https://www.youtube.com/watch?v=RpgcYiky7uw)
|
||||
- [ ] [[Review] Shortest Path Algorithms (playlist) in 16 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw)
|
||||
- [ ] [[Review] Minimum Spanning Trees (playlist) in 4 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV)
|
||||
|
||||
- Khóa học đầy đủ về đồ thị trên Coursera:
|
||||
- [ ] [Các thuật toán trên đồ thị (video)](https://www.coursera.org/learn/algorithms-on-graphs/home/welcome)
|
||||
|
@ -1321,7 +1320,7 @@ Bạn sẽ biết thêm nhiều ứng dụng của đồ thị trong sách của
|
|||
|
||||
- [ ] Các video ngắn 2-3 phút (23 video)
|
||||
- [Videos](https://www.youtube.com/watch?v=r4r1DZcx1cM&list=PLmVb1OknmNJuC5POdcDv5oCS7_OUkDgpj&index=22)
|
||||
- [ ] Các video ngắn 2-5 phút - Michael Sambol (38 video)
|
||||
- [ ] Các video ngắn 2-5 phút - Michael Sambol (40 video)
|
||||
- [Videos](https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ)
|
||||
|
||||
---
|
||||
|
@ -1666,6 +1665,7 @@ Bạn không bao giờ thực sự học xong!
|
|||
- [ ] [Aduni - Algorithms - Lecture 5 (video)](https://www.youtube.com/watch?v=hm2GHwyKF1o&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=5)
|
||||
- [ ] [Black Tree](https://en.wikipedia.org/wiki/Red%E2%80%93black_tree)
|
||||
- [ ] [An Introduction To Binary Search And Red Black Tree](https://www.topcoder.com/community/data-science/data-science-tutorials/an-introduction-to-binary-search-and-red-black-trees/)
|
||||
- [[Review] Red-Black Trees (playlist) in 30 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin)
|
||||
|
||||
- [ ] **2-3 search trees**
|
||||
- Trong thực tế:
|
||||
|
@ -1700,6 +1700,7 @@ Bạn không bao giờ thực sự học xong!
|
|||
- [ ] [MIT 6.851 - Memory Hierarchy Models (video)](https://www.youtube.com/watch?v=V3omVLzI0WE&index=7&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
|
||||
- giải thích cache mau quên (cache-oblivious) B-Trees, một cấu trúc dữ liệu rất thú vị.
|
||||
- 37 phút đầu tiên rất nặng kỹ thuật, có thể bỏ qua
|
||||
- [[Review] B-Trees (playlist) in 26 minutes (video)](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
|
||||
|
||||
|
||||
- ### k-D Trees
|
||||
|
|
Loading…
Reference in New Issue