Chapter 2 General:
-Watch the MIT video if it is only about Ch2. (done)
-Write up the summary of the video.
-Read all the solution sets after I finished the videos.
-work out cost analysis similar to P.26 on selection sort, linear search and merge sort (tedious).
-Think how to draw the recursion tree for the insertion sort algorithm.
-Work out all proofs for the following algorithms
-insertion sort
-selection sort
-bubble sort
-binary insertion sort
-merge sort
-linear search
-binary search
-Implement 2.3.7, P2.1, Horner's rule in P2.3 and inversion calculation in P2.4. 2.3.7 has two solutions, one is trivial, one is based on merge. Think them through.
Chapter 3 General
-TAOCP? Knuth must have talk about Big Oh at a certain point. (done)
-There is no difference between CLRS and TAOCP (done)
-Read the Wikipedia's entries in the big Oh notation, iterative logarithm and all Math related subject. (done)
-Finish all exercises of Sedgewick Chapter 2.
-Finish all exercises below Level 25 of TAOCP Section 1.1 and 1.2
-Read CMath Chapter 2, 3 and 9. Finished all easy exercises.
-Alternative definitions of the asymptotic notion.
-What is the difference between the definitions of Sedgewick with CLRS?
-What is the difference between the definitions of Sedgewick with CLRS?
Insertion sort:
-C, perl, python (done)
-sentinel version of straight insertion sort (done)
-binary search (done, now a separate item)
-binary insertion sort (done, now a separate item)
-recursive version of insertion sort (done)
-start to write a performance driver
-shell sort, how does the decrement business works?
-Pratt's increments.
-Sedgewick's increments.
-library sort
-tree sort(from wikipedia, what is it?)
-insertion sort improvement, all suggested by Exercises from TAOCP.
-start to write a performance driver
-shell sort, how does the decrement business works?
-Pratt's increments.
-Sedgewick's increments.
-library sort
-tree sort(from wikipedia, what is it?)
-insertion sort improvement, all suggested by Exercises from TAOCP.
-insertion sort with linked list
-How does the idea of insert leads to merge sort?
-How does the idea of insert leads to merge sort?
-C++,java, lisp, ASM, TAOCP Pseudo, TAOCP MIX, TAOCP MMIX.
-performance, worst case, average case
-different ways to avoid -INT_MAX as the sentinel. (state of art?)
-non-adaptive version of insertion sort.
-TAOCP Exercises in 5.2.1
-Sedgewick 6.3 Exercises
-performance, worst case, average case
-different ways to avoid -INT_MAX as the sentinel. (state of art?)
-non-adaptive version of insertion sort.
-TAOCP Exercises in 5.2.1
-Sedgewick 6.3 Exercises
Selection sort:
-C, perl, python (done)
-C++,java, lisp, ASM
-stable version of selection sort.
-bidirectional version of selection sort.
-comparison with insertion sort.
-comparison with bubble sort
-recursive version of insertion sort
-cycle sort
-heap sort variants
-tournament sort
-smoothsort.
-TAOCP Exercise in 5.2.3
-Sedgewick 6.2
-Sedgewick 6.2 Exercise
-C, perl, python (done)
-C++,java, lisp, ASM
-stable version of selection sort.
-bidirectional version of selection sort.
-comparison with insertion sort.
-comparison with bubble sort
-recursive version of insertion sort
-cycle sort
-heap sort variants
-tournament sort
-smoothsort.
-TAOCP Exercise in 5.2.3
-Sedgewick 6.2
-Sedgewick 6.2 Exercise
Binary Insertion sort:
-C (done)
-perl, python, C++, java, lisp, ASM
Bubble sort:
-C (done)
-shaker sort
-perl, python, java, lisp, ASM
-TAOCP 5.2.2
Merge sort:
-C, perl(done)
-python, C++,java, lisp, ASM
-timsort
-performance, worst case, average case
-Improvements from Sedgewick.
-Non-recursive version or Bottom up version
-in place mergesort.
-no extra memory implementation (state of art?)
-variations of merge sort.
-implement merge sort with k list and a k-list merging. 2.4.1.
-TAOCP Exercise in 5.4
-Sedgewick 8 (read - done)
-Sedgewick 8 Exercises.
-Shene's 5-9 Exercises.
-TAOCP Exercise in 5.4
-Sedgewick 8 (read - done)
-Sedgewick 8 Exercises.
-Shene's 5-9 Exercises.
-where can I find problems which apply merging?
-Implement CLRS 2.3-7 using merging
-like to calculate number of inversions.
Linear search:
-C, MIXAL (done)
-perl, python, C++,java, lisp, ASM
-perl, python, C++,java, lisp, ASM
-TAOCP 6.1 and exercises. Remember, it's not as trivial as you may think.
Binary search:
-C (done)
-perl, python, C++,java, lisp, ASM
-perl, python, C++,java, lisp, ASM
-At least 100 problems which applies binary search.
-TopCoder's exercises on binary search.
-Implement CLRS 2.3-7.
-Shene Chapter 4.
-After reading Gries, make sure you prove your own binary search is correct.
-TAOCP 6.2 and exercises.
-Chapter 4 and 5 of Programming Pearl exercises.
-Sedgewick 12.4
-Fibonacci search
-Range search
-Variations of binary search.
-Thinking: variations of binary search. They produce different lo, up bounds. Interesting.
-Thinking: can we combine the idea of distribution in binary search?
-Thinking: what happens if binary search is applied to a sequence with N inversions?Inversions:
-Try to understand TAOCP 5.1 as much as I can.
-Try to do exercises in TAOCP 5.1.
No comments:
Post a Comment