Browse Source

Moved Fibonacci Heap down to graphs. Some implementation functions for priority queue.

John Washam 8 years ago
parent
commit
fb2d4ef7d8
1 changed files with 14 additions and 11 deletions
  1. 14 11
      README.md

+ 14 - 11
README.md

@@ -435,16 +435,14 @@ Then test it out on a computer to make sure it's not buggy from syntax.
     - [x] Building a heap: https://www.coursera.org/learn/data-structures/lecture/dwrOS/building-a-heap
     - [x] Building a heap: https://www.coursera.org/learn/data-structures/lecture/dwrOS/building-a-heap
     - [x] MIT: Heaps and Heap Sort: https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb
     - [x] MIT: Heaps and Heap Sort: https://www.youtube.com/watch?v=B7hVxCmfPtM&index=4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb
     - [x] CS 61B Lecture 24: Priority Queues: https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C
     - [x] CS 61B Lecture 24: Priority Queues: https://www.youtube.com/watch?v=yIUFT6AKBGE&index=24&list=PL4BBB74C7D2A1049C
-    - [ ] Fibonacci Heap:
-        - [ ] https://www.youtube.com/watch?v=FOzMD1FQjKk
-        - [ ] https://www.youtube.com/watch?v=FOzMD1FQjKk
+    - [x] Linear Time BuildHeap (max-heap): https://www.youtube.com/watch?v=MiyLo8adrWw
     - [ ] Implement a max-heap:
     - [ ] Implement a max-heap:
-        - [ ] create_heap - create an empty heap
-        - [ ] insert
-        - [ ] sift_up - needed for insert
-        - [ ] extract_max
-        - [ ] sift_down - needed for extract_max
-        - [ ] get_max - returns the max item, without removing it
+        - [x] insert
+        - [x] sift_up - needed for insert
+        - [x] get_max - returns the max item, without removing it
+        - [x] extract_max
+        - [x] sift_down - needed for extract_max
+        - [x] get_size() - return number of elements stored
         - [ ] remove(i) - removes item at index x
         - [ ] remove(i) - removes item at index x
         - [ ] heapify - create a heap from an array of elements
         - [ ] heapify - create a heap from an array of elements
         - [ ] size() - return number of elements in heap
         - [ ] size() - return number of elements in heap
@@ -463,8 +461,8 @@ Then test it out on a computer to make sure it's not buggy from syntax.
 
 
     - [ ] **splay trees**
     - [ ] **splay trees**
         - [ ] https://www.coursera.org/learn/data-structures/lecture/O9nZ6/splay-trees
         - [ ] https://www.coursera.org/learn/data-structures/lecture/O9nZ6/splay-trees
-        - [ ] UCB: https://www.youtube.com/watch?v=G5QIXywcJlY
-        - [ ] https://www.youtube.com/watch?v=QnPl_Y6EqMo
+        - [ ] CS 61B Lecture 34: Splay Trees: https://www.youtube.com/watch?v=G5QIXywcJlY&list=PL4BBB74C7D2A1049C&index=34
+        - [ ] Lecture 04, 09/13: Splay Trees: https://www.youtube.com/watch?v=QnPl_Y6EqMo
 
 
     - [ ] **red/black trees**
     - [ ] **red/black trees**
         - [ ] https://class.coursera.org/algs4partI-010/lecture/50
         - [ ] https://class.coursera.org/algs4partI-010/lecture/50
@@ -529,6 +527,10 @@ Then test it out on a computer to make sure it's not buggy from syntax.
     - [ ] Dijkstra's algorithm
     - [ ] Dijkstra's algorithm
     - [ ] A*
     - [ ] A*
 
 
+- For Curiosity:
+    - [ ] MIT Lecture: Speeding up Dijkstra: https://www.youtube.com/watch?v=CHvQ3q_gJ7E
+        - covers Fibonacci heap, a more complicated but more efficient heap than binary heap
+
 You'll get more graph practice in Skiena's book (see Books section below) and the interview books
 You'll get more graph practice in Skiena's book (see Books section below) and the interview books
 
 
 ## Sorting
 ## Sorting
@@ -572,6 +574,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
 
 
 - [ ] Recursion
 - [ ] Recursion
     -  when it is appropriate to use it
     -  when it is appropriate to use it
+    - [ ] Short Series on Recurrence Relations: https://www.youtube.com/playlist?list=PLSVu1-lON6LybCHQs8Io_EhyrEQ4b1xAF
 
 
 - [ ] open-ended problems
 - [ ] open-ended problems
     - manipulate strings
     - manipulate strings