您的浏览历史

计算机程序设计艺术 第4卷 第3册 生成所有组合和分划(双语版)

促销活动
  • [本书]参加机械工业出版社华章公司满58元赠书活动

基本信息

编辑推荐

计算机程序设计领域的“圣经”。
图灵奖得主Donald E.Knuth的传世之作。
国内外颇具盛名的计算机科学专家苏运霖的精心译作
...

内容简介回到顶部↑

关于算法分析的这多卷论著已经长期被公认为经典计算机科学的定义性描述。这一册以及刚刚出版的第4卷第2册揭开了人们急切等待的《计算机程序设计艺术第4卷组合算法》的序幕。作为关于组合查找的冗长一章的一部分,这一册开始关于生成所有组合和分划的讨论。在Knuth讨论这两个主题的过程中,读者不仅会看到很多新内容,并且会发现本册与卷1至卷3及计算机科学和数学的其他方面的丰富联系。一如既往,书中包括了大量的习题和富有挑战性的难题。.
本册以及第4卷第2册的出版揭开了人们急切等待的《计算机程序设计艺术第4卷组合算法》的序幕。作为关于组合查找的冗长一章的一部分,这一册开始关于生成所有组合和分划的讨论。在Knuth讨论这两个主题的过程中,读者不仅会看到很多新内容,并且会发现本册与前三卷及计算机科学和数学的其他方面的丰富联系。一如既往,书中包括了大量的习题和富有挑战性的难题。通过讨论有关的游戏和数学难题,Knuth阐明一个重要的观点:严肃的程序设计也可以是一种乐趣。...

作译者回到顶部↑

本书提供作译者介绍

Donald E. Knuth(唐纳德·E.克努特,中文名高德纳)是算法和程序设计技术的先驱者,并发明了计算机排版系统TEX和METAFONT,他因这些成就和大量创造性的、影响深远的论著而誉满全球。作为斯坦福大学计算机程序设计艺术的荣誉退休教授,Knuth现正投入全部的时间来完成其关于计算机科学的史诗性的七卷集。Knuth教授获得了许多奖项和荣誉,包括美国计算机协会图灵奖 (ACM Turing Award),美国前总统卡特授予的科学金奖(Medal of Science),美国数学学会斯蒂尔奖(AMS Steele Prize),以及极受尊重.. << 查看详细

作者: Donald E.Knuth
算法和程序设计技术的先驱者,是计算机排版系统TEX和METAFONT的发明者。   Donald.E.Knuth(唐纳德.E.克努特,中文名高德纳)是斯坦福大学计算机程序设计艺术的荣誉退休教授,Knuth教授获得了许多奖项和荣誉,包括美国计算机协会图灵奖(ACM Turing Award),美国前总统卡特授予的科学金奖(Medal of Science),美国数学学会斯蒂尔奖(AMS Steele Prize),以及1996年11月由于发明先进技术荣获的极受尊重的京都奖(KyotoPrize)。他因这些成就和大量创造性的影响深远的著作(19部书和160篇论文)而誉满全.. << 查看详细

[同作者作品]
计算机程序设计艺术(英文影印版)(1-3卷精装全套)
计算机程序设计艺术:第4卷 第2册 生成所有元组和排列(双语版)
计算机程序设计艺术 第4卷 第3册 生成所有组合和分划(双语版)

译者: 苏运霖
暨南大学教授,国内外颇具盛名的计算机科学专家。 苏运霖教授是出生于印度尼西亚的华侨,他曾被选为全国电工学会优秀科技工作者和电机工程优秀科技工作者。他还被美国纽约科学院邀请为该院院士,名字被录入美国国际传记中心出版的《国际传记辞典》、英国传记研究所出版的《国际卓越领导者名单》,以及英国国际传记中心出版的《世界知识名人录》。.. << 查看详细

[同作者作品]
编译原理
数据结构与算法

目录回到顶部↑

Preface.
Chapter 7 Combinatorial Searching
7.2 Generating All Possibilities
7.2.1 Generating Basic Combinatorial Patterns
7.2.1.1 Generating all n-tuples
7.2.1.2 Generating all permutations
7.2.1.3 Generating all combinations
7.2.1.4 Generating all partitions
7.2.1.5 Generating all set partitions
Answers to Exercises
译者序
前言..
第7章 组合查找
7.2 生成所有可能性
7.2.1 生成基本的组合模式
7.2.1.1 生成所有n元组
7.2.1.2 生成所有排列
7.2.1.3 生成所有组合
7.2.1.4 生成所有分划
7.2.1.5 生成所有集合的分划

前言回到顶部↑

THIS BOOKLET is Fascicle 3 of The Art of Computer Programming, Volume 4: Combinatorial Algorithms. As explained in the preface to Fascicle I of Volume 1, I'm circulating the material in this preliminary form because I know that the task of completing Volume 4 will take many years; I can't wait for people to begin reading what I've written so far and to provide valuable feedback. .
To put the material in context, this fascicle contains Sections 7.2.1.3, 7.2.1.4, and 7.2.1.5 of a long, long chapter on combinatorial searching. Chapter 7 will eventually fill three volumes (namely Volumes 4A, 4B, and 4C), assuming that I'm able to remain healthy. It will begin with a short review of graph theory, with emphasis on some highlights of significant graphs in The Stanford GraphBase, from which I will be drawing many examples. Then comes Section 7.1, which deals with bitwise manipulation and with algorithms relating to Boolean functions. Section 7.2 is about generating all possibilities, and it begins with Section 7.2.1: Generating Basic Combinatorial Patterns. Details about various useful ways to generate n-tuples appear in Section 7.2.1.1, and the generation of permutations is discussed in Section 7.2.1.2. That sets the stage for the main contents of the present booklet, namely Section 7.2.1.3 (which extends the ideas to combinations of n things taken t at a time); Section 7.2.1.4 (about partitions of an integer); and Section 7.2.1.5 (about partitions of a set). Then will come Section 7.2.1.6 (about trees) and Section 7.2.1.7 (about the history of combinatorial generation), in Fascicle 4. Section 7.2.2 will deal with backtracking in general. And so it will go on, if all goes well; an outline of the entire Chapter 7 as currently envisaged appears on the taocp webpage that is cited on page ii.
I had great pleasure writing this material, akin to the thrill of excitement that I felt when writing Volume 2 many years ago. As in Volume 2, where I found to my delight that the basic principles of elementary probability theory and number theory arose naturally in the study of algorithms for random number generation and arithmetic, I learned while preparing Section 7.2.1 that the basic principles of elementary combinatorics arise naturally and in a highly motivated way when we study algorithms for combinatorial generation. Thus, I found once again that a beautiful story was "out there" waiting to be told. ..
For example, in the present booklet we find many of the beautiful patterns formed by combinations, with and without repetition, and how they relate to famous theorems of extremal combinatorics. Then comes my chance to tell the extraordinary story of partitions; indeed, the theory of partitions is one of the nicest chapters in all of mathematics. And in Section 7.2.1.5, a littleknown triangle of numbers, discovered by C. S. Peirce, turns out to simplify and unify the study of set partitions, another vital topic. Along the way I've included expositions of two mathematical techniques of great importance in the analysis of algorithms: Poisson's summation formula, and the powerful saddle point method. There are games and puzzles too, as in the previous fascicles.
My original intention was to devote far less space to these subjects. But when I saw how fundamental the ideas were for combinatorial studies in general, I knew that I could never be happy unless I covered the basics quite thoroughly. Therefore I've done my best to build a solid foundation of theoretical and practical ideas that will support many kinds of reliable superstructures.
I thank Frank Ruskey for bravely foisting an early draft of this material on college students and for telling me about his classroom experiences. Many other readers have also helped me to check the first drafts; I wish to thank especially George Clements and Svante Janson for their penetrating comments.
I shall happily pay a finder's fee of $2.56 for each error in this fascicle when it is first reported to me, whether that error be typographical, technical, or historical. The same reward holds for items that I forgot to put in the index. And valuable suggestions for improvements to the text are worth 32c each. (Furthermore, if you find a better solution to an exercise, I'll actually reward you with immortal glory instead of mere money, by publishing your name in the eventual book:-)
Notations that are used here and not otherwise explained can be found in the Index to Notations at the end of Volumes 1, 2, or 3. Those indexes point to the places where further information is available. Of course Volume 4 will some day contain its own Index to Notations.
Machine-language examples in all future editions of The Art of Computer Programming will be based on the MMIX computer, which is described in Volume 1, Fascicle 1.
Cross references to yet-unwritten material sometimes appear as '00' in the following pages; this impossible value is a placeholder for the actual numbers to be supplied later. ...
Happy reading!
Stanford, California D. E. K.
June 2005

评论交流

共有24人开贴评论  32人参与评论  23人参与打分 查看

19人
 82%
用户平均打分
我要写评论 help如何参与评论和打分
0人
 0%
1人
 4%
2人
 8%
1人
 4%

yeyouqun

二级评论员
该会员在china-pub购买过此书
  
发表于:2010-2-25 15:40:00
书是好书,但是翻译的确不怎么样。一看就是不是认真对待的译者。
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

yujingxian

五级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2009-12-12 23:23:00
计算机程序设计艺术
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

cainong_111

二级评论员
评价等级:  
发表于:2008-7-15 22:18:00
劝大家不要买这书了,有几个人真正能全读懂,knuth的水平自然是很厉害,个人感觉他写书不通俗易懂,不循序渐进,书上讲的都是早期计算机的东西,翻译的也不是很好,一般程序员都没有必要看这书,看看sedgewick的书就足够了,不是数学专业的,书上很多东西都看不懂的,
这本书对于99%的人都没有什么用..
回复 ( 1条评论-- 点击查看讨论 )
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得2个)

cainong_111

二级评论员
评价等级:  
发表于:2008-7-15 22:18:00
劝大家不要买这书了,有几个人真正能全读懂,knuth的水平自然是很厉害,个人感觉他写书不通俗易懂,不循序渐进,书上讲的都是早期计算机的东西,翻译的也不是很好,一般程序员都没有必要看这书,看看sedgewick的书就足够了,不是数学专业的,书上很多东西都看不懂的,
这本书对于99%的人都没有什么用..
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得1个)

superzxt

三级评论员
评价等级:  
发表于:2007-12-13 0:10:00
大家就别再说出版质量、纸张质量的问题了,只有机工引进了这些书,要么你不看,要么你就花钱买这样的书。牢骚又能怎么样?人家手里握着出版权,只要出版,总是有人会买的。所以出版社根本不用考虑质量还是能赚钱。有多少人舍得花钱从国外买书?
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)
我要写评论
查看所有评论交流(共24条)