I have thought about this for a while. It is indeed quite difficult to get through the exercises of Chapter 4. This could simply be a matter that I don't fully grok some of the nuance of the subject. Solving recursive relation is a deep subject. I have improved on it but my mathematical skills is still not good enough. That sets me to a position which I can't move on.
So I am thinking. I might want to skip both Chapter 4 and 5. They can be too mathematical (as well as tedious) for me at the moment. I can work on Chapter 6 directly and try to think if I can finish some exercises in Chapter 4 and 5. This will unstuck me and it's meaningless to get stuck for such a long time without moving along. Insight such as grokking the solution of T(n) = 2*T(n/2) +n is useful enough to move on.
I am also working on my cloud blog all the time. It's a lot of fun to write. When I have chance I will also expand it to support more languages and more topics. Should I do the same for "Self-Study" I don't know. After all, "Self-Study" is really just my diary. Making it to attract readers is a bit far-reaching for me.
33_P
This is my self-study page for the book, "Introduction to Algorithm", or commonly known as CLRS. This is also my diary page of how I struggle and grow in the programming world. I hope this blog can help amateurs or professionals, to improve their skills in programming, learning and living. As of Sep 12, 2011, I finished the "exercise read" of Chapter 2 (20110518) and 3 (20110608) and half of Chapter 4.
Shortcut for chapter specific information
Chapter4
(62)
chapter3
(41)
Chapter2
(22)
chapter6
(10)
chapter12
(9)
chapter15
(8)
chapter13
(7)
chapter7
(7)
Chapter10
(5)
chapter5
(5)
Appendix A
(4)
chapter8
(4)
Chapter19
(3)
Chapter22
(3)
Chapter34
(3)
Chapter35
(3)
chapter11
(3)
chapter16
(3)
chapter18
(3)
Appendix C
(2)
Chapter21
(2)
Chapter25
(2)
Chapter26
(2)
Chapter27
(2)
Chapter28
(2)
Chapter29
(2)
Chapter9
(2)
chapter14
(2)
chapter20
(2)
chapter23
(2)
chapter24
(2)
chapter30
(2)
chapter31
(2)
chapter32
(2)
Appendix D
(1)
Chapter1
(1)
Chapter33
(1)
chapter17
(1)
Showing posts with label chapter5. Show all posts
Showing posts with label chapter5. Show all posts
Saturday, October 22, 2011
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.
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.
Saturday, May 28, 2011
Chapter 5 Reread and Appendix C
I decided to let myself drift for a while because exercises in CLRS 3.2 beat me up quite a bit. So I need to let my mind relaxed for a while because I think I don't perform well.
My way to deal with such kind of problems is to look ahead of the book. This usually motivates me because you will start to see all these fundamental materials become necessary to understand more. For example, if you truly want to understand quick sort and heap sort, then you need to know much of the materials in Chapter 5. Or else your calculation will become quite messy. If you want to solve recurrence in general, you have to go through Chapter 4. Or else most of the time, you will be hit or miss guessing a formula.
I quickly browsed through the material in Chapter 5. Chapter 5 can be thought of as the toughest chapter out of all the introductory chapters (Chapter 2 to 5). It requires math outside of just an algorithm book and it probably take a class of random process or statistics to fully understand.
But I am curiously attracted to such a difficulty. The question in my mind is always "Why not?". If this is the exercises are difficult, why I am not able to solve it? I will just beat them one day. That's my thinking.
Many programmers, just like me, try to read CLRS from the beginning, they are all stumbled in Chapter 5 because it suddenly requires math and stats which go beyond their comfort zone. Some people will also doubt the introductory book status of CLRS. To me, that's ridiculous, being good in probability and math is important in nearly every facet of life. You want to understand lottery? Probability. You want to understand election? Probability. You want to know how merge sort really works but not just copying? Math and probability. So getting good at it while you have time, (you have time because you are reading CLRS already), it's certainly very beneficial.
In fact this difficulty of reading Chapter 5 is mitigated by the authors, who put most introductory material into the Appendices. My plan is if I got stuck in Chapter 5, I will first exercises from both Appendix A and Appendix C first. (In fact, I have already finished some of them.) Why not? This is a good refreshment of what I learned in the past anyway.
My way to deal with such kind of problems is to look ahead of the book. This usually motivates me because you will start to see all these fundamental materials become necessary to understand more. For example, if you truly want to understand quick sort and heap sort, then you need to know much of the materials in Chapter 5. Or else your calculation will become quite messy. If you want to solve recurrence in general, you have to go through Chapter 4. Or else most of the time, you will be hit or miss guessing a formula.
I quickly browsed through the material in Chapter 5. Chapter 5 can be thought of as the toughest chapter out of all the introductory chapters (Chapter 2 to 5). It requires math outside of just an algorithm book and it probably take a class of random process or statistics to fully understand.
But I am curiously attracted to such a difficulty. The question in my mind is always "Why not?". If this is the exercises are difficult, why I am not able to solve it? I will just beat them one day. That's my thinking.
Many programmers, just like me, try to read CLRS from the beginning, they are all stumbled in Chapter 5 because it suddenly requires math and stats which go beyond their comfort zone. Some people will also doubt the introductory book status of CLRS. To me, that's ridiculous, being good in probability and math is important in nearly every facet of life. You want to understand lottery? Probability. You want to understand election? Probability. You want to know how merge sort really works but not just copying? Math and probability. So getting good at it while you have time, (you have time because you are reading CLRS already), it's certainly very beneficial.
In fact this difficulty of reading Chapter 5 is mitigated by the authors, who put most introductory material into the Appendices. My plan is if I got stuck in Chapter 5, I will first exercises from both Appendix A and Appendix C first. (In fact, I have already finished some of them.) Why not? This is a good refreshment of what I learned in the past anyway.
Status 20110528
Finished in my head: 5.1-1, 5.1-2, C.1-2, C.1-4, C.1-5, C.1-7, C.1-8, C.1-9, C.1-14, C.2-1, C.2-2, C.2-4, C.2-5, C.2.9, C.3-1, C.3-2, C.3-10
Fuzzy reading: 339/1144
Browse reading: 309/1144
Exercises up to 3-2.4. Also finished 3-2.{6,7,8}.
Browse reading: 309/1144
Exercises up to 3-2.4. Also finished 3-2.{6,7,8}.
Needs write up: 3-2.8, P2.1c
Exercises which are finished but not on paper: 1.1-2, 1.2-2, 1.2-3, P1-1, 3.2-5, P3-1,P3.2(d-f), P3-4{a,c,d,e,f}, 4.5-1, P4.4(a-c), 5.1-{1,2}, 6.1-{1,2,3,7}, 6.2-3, 6.2-4, 10.1-6, 10.1-7, 12.1-{1,2,4} 12.2-{2.3}, 12.4-4, P12.4(a), C.1-{2,4,5,7,8,9,14}, C.2-{1,2,4,5}, C.3-{1,2,10}
Friday, April 8, 2011
Status at 20110408
* Spent 15 minutes to read through Chapter 5. Also learned what is hiring problem.
* Also read through p. 147 to p. 150. I guess I will cruise through the sorting Chapters. Since they are more interesting.
* I start to see why so many are big fans of writing beautiful algorithm. As a scientific pursuit, algorithmic study is not a bad one.
* So far,
First Read: 150/1144
Exercise Read: 2-1.3
33_P
* Also read through p. 147 to p. 150. I guess I will cruise through the sorting Chapters. Since they are more interesting.
* I start to see why so many are big fans of writing beautiful algorithm. As a scientific pursuit, algorithmic study is not a bad one.
* So far,
First Read: 150/1144
Exercise Read: 2-1.3
33_P
Subscribe to:
Posts (Atom)