Shortcut for chapter specific information

Showing posts with label chapter11. Show all posts
Showing posts with label chapter11. Show all posts

Saturday, September 17, 2011

Thinking about the second browse read of CLRS

As I am almost finished the first browse read and far from finishing the exercise read, it makes me think what is the best way to make use of the second read.

The truth is the linear style of the first browse read is not a very effective way to absorbe difficult topics such as red-black tree or dynamic programming.   Many selected topics by itself should also be read in a separate book so a linear-read is unlikely to give too much benefit.

Here are couple of thoughts at this point.  It requires a slight modification of the second browse read as well as the exercise read.

1, First of all, the browsing in the second read should be slower.   The general principle is that I need to understand more than the first read.

2, Second, instead of getting stuck in a particular chapter just like now, my exercise read should incorporate at least another N chapters in future read.   How should I choose the chapters? How large is N?  My answer is that if I can finish more than 50% (more or less) of the chapter exercises, then I should pick it as an exercise read.  Right now that means Chapter 6 (Heapsort), Chapter 7 (Quicksort) and Chapter 12 (Binary Search Tree).  My take is that N is likely equal to 1 or 2 because it's easy to get distracted.

3, I will also let problems I have been working on in work as well as in school to stimulate me.  If I need to review certain material.  I will not hesitate to reread a certain chapter of CLRS.  For example, I probably need to reread the Hash table (Chapter11) and sorting chapter soon.   They are beneficial for my learning in the class.  They will also be essential in my work life.

So let's see how it goes.   Of course, I probably want to start the second browse read first.  This will be quite something by its own.  The last three chapters are interesting and deep.

Sunday, June 5, 2011

Reread Chapter 5 and 11

These are the relatively tough chapters in CLRS because they require wielding of mathematics which include probability and statistics.   I think this is probably my third or forth read.   There are still material I don't feel I am connected with.   They are not very difficult.   It's just take some time to think them through. 

If you think about it, hash table is a very different device we made.   On the bottom of it, it relies on average case performance as compared to worst case performance analysis we used in other algorithmic device. 

Friday, May 6, 2011

Status at 20110506

Finished skimmed reading Ch10 and Ch11.  Those are about elementary data structure such as linked list, stack , queue and hash tables.  As always, there are many things I don't understand about them.  Each of them have a lot of trick questions.  For example, how to find the middle of a singly-linked list one pass? How to find the length of a circular singly-linked list?  These are all trick questions.  (In fact, first solved by Turing award winners before becoming a folklore and finally an interview question.....).

A good way to look at all these data structures is to think of them as used for a search operation.  That's why in TAOCP there are two chapters just on sorting and searching.  So one should think sorting and searching are equally important.

That reminds me, I still owe myself an implementation of linear search. 

Browse reading: 287/1144
Exercises up to 2.3-4
Exercises which are finished but not on paper: 2.3-7, 6.1-7, 6.2-3, 6.2-4, 10.1-6 and 10.1-7.