24小时热门版块排行榜    

查看: 248  |  回复: 3
【奖励】 本帖被评价2次,作者zhangjs增加金币 1
当前主题已经存档。

zhangjs

铁杆木虫 (职业作家)


[资源] Problems on Algorithms

Problems on Algorithms
by Ian Parberry & William Gasarch
268 pages | Prentice Hall; 2nd edition (2002) | English | | 2.35 MB

Too often the problem sets in standard algorithm texts are composed of small, idiosyncratic units of busy-work and irrelevant questions -- forcing instructors into the time-consuming task of finding or composing additional problems. Designed to fill that gap, this supplement provides an extensive and varied collection of useful, practical problems on the design, analysis, and verification of algorithms.


Amazon Review:
“       
A little gem of fundamental computer science, July 5, 2003
Reviewer: James Arvo (Pasadena, CA USA) -

This is a terrific little book, which I recommend highly to students of computer science, but above all to those who teach computer science. While I could imagine teaching a short course based on this book alone, it would be an excellent supplement to a more thorough-going text. Better still, just keep this little book around for those times when you are searching for a good homework or exam problem. It's got hundreds of them.

On the down side, Parberry's discussions are so terse that students may get somewhat frustrated if it is their only source. Yet, there is much to be said for being concise! The author wastes nary a syllable before launching into the problems, which is how he managed to pack so much into a mere 167 pages. Don't be deceived by the thickness of this book; it may look like a mere pamphlet, but it contains 651 exercises, many of which have lengthy hints and good number of which are actually worked out in detail.

The book introduces a wide range of topics from very basic (mathematical induction) to somewhat sophisticated (NP-completeness). About half of the book focuses on mathematical prerequisites such as induction, inequalities, binomial coefficients, combinatorics, graphs, Big-Oh & Big Omega, and recurrence relations. The rest of the book covers topics such as graph algorithms, searching, greedy algorithms, dynamic programming, divide-and-conquer, backtracking, program correctness, and even a chapter on NP-completeness. The latter includes a terse description of both Cook reducibility and Karp (many-to-one) reducibility. This last chapter would be a bit too dense for someone unfamiliar with these concepts, but it's a nice review with copious exercises.

There are a few things I particularly like about the book. First is the chapter on program correctness, which includes dozens of examples and exercises on loop invariants. This is a great resource in itself. Secondly, I really like the occasional "What is Wrong?" sections, where the author presents what seems to be a valid proof or argument, and the student is asked to find the subtle flaw. This is an excellent pedagogical technique.

If you're an undergraduate in computer science, the simpler exercises will be extremely useful to you. If you are a graduate student in computer science, you will gain from seeing all these fundamental topics covered so quickly, and with very clear examples. Read it before your qualifying exam! If you are a professor of computer science (like me), you may want to keep this book under wraps; it's too good a source for exam problems.

I'll close with a paraphrasing of one of the exercises in the book. This is significantly wordier than most of the problems in this book, but it's clever and is exactly the type of thing that would make a great homework exercise in an introductory algorithms class. "You are facing a high wall that stretches infinitely in both directions. There is a door in the wall, but you don't know how far away or in which direction." The problem then asks you to describe how you would find the door in O(n) steps, where "n" is the number of steps initially separating you from the door. What a cute problem!

I wish there were more volumes like this.

[ Last edited by cuplgz on 2007-4-3 at 20:51 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyz4901806

金虫 (著名写手)


真是太有用了!
2楼2007-03-04 20:37:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhangjs 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见