目录CONTENTS第1章算法引论1
习题11实际参数交换1
习题12方法头签名1
习题13数组排序判定1
习题14函数的渐近表达式2
习题15O(1)和O(2)的区别2
习题16按渐近阶排列表达式2
习题17算法效率2
习题18硬件效率3
习题19函数渐近阶3
习题110n!的阶3
习题111平均情况下的计算时间复杂性4
算法实现题11统计数字问题4
算法实现题12字典序问题5
算法实现题13最多约数问题6
算法实现题14金币阵列问题7
算法实现题15最大间隙问题10
第2章递归与分治策略12
习题21Hanoi 塔问题的非递归算法12
习题227个二分搜索算法13
习题23改写二分搜索算法16
习题24大整数乘法的O(nmlog(3/2))算法16
习题255次n/3位整数的乘法17
习题26矩阵乘法19
习题27多项式乘积19
习题28不动点问题的O(logn)时间算法19
习题29主元素问题的线性时间算法19目录算法设计与分析习题解答(第4版)习题210无序集主元素问题的线性时间算法20
习题211O(1)空间子数组换位算法20
习题212O(1)空间合并算法22
习题213n段合并排序算法28
习题214自然合并排序算法29
习题215最大值和最小值问题的最优算法31
习题216最大值和次大值问题的最优算法31
习题217整数集合排序32
习题218第k小元素问题的计算时间下界32
习题219非增序快速排序算法33
习题220随机化算法34
习题221随机化快速排序算法34
习题222随机排列算法34
习题223算法qSort中的尾递归34
习题224用栈模拟递归34
习题225算法select中的元素划分35
习题226O(nlogn)时间快速排序算法35
习题227最接近中位数的k个数36
习题228X和Y的中位数36
习题229网络开关设计36
习题230带权中位数问题37
习题231构造Gray码的分治算法39
习题232网球循环赛日程表40
算法实现题21输油管道问题44
算法实现题22众数问题44
算法实现题23邮局选址问题45
算法实现题24马的Hamilton周游路线问题46
算法实现题25半数集问题54
算法实现题26半数单集问题55
算法实现题27士兵站队问题56
算法实现题28有重复元素的排列问题57
算法实现题29排列的字典序问题58
算法实现题210集合划分问题(一)60
算法实现题211集合划分问题(二)61
算法实现题212双色Hanoi塔问题62
算法实现题213标准二维表问题64
算法实现题214整数因子分解问题64
算法实现题215有向直线2中值问题65
第3章动态规划68
习题31最长单调递增子序列68
习题32最长单调递增子序列的O(nlogn)算法69
习题33漂亮打印70
习题34整数线性规划问题71
习题35二维背包问题71
习题36Ackermann函数72
算法实现题31独立任务最优调度问题74
算法实现题32最少硬币问题76
算法实现题33序关系计数问题77
算法实现题34多重幂计数问题77
算法实现题35最小m段和问题78
算法实现题36石子合并问题79
算法实现题37数字三角形问题81
算法实现题38乘法表问题82
算法实现题39租用游艇问题83
算法实现题310汽车加油行驶问题84
算法实现题311圈乘运算问题85
算法实现题312最少费用购物91
算法实现题313最大长方体问题93
算法实现题314正则表达式匹配问题94
算法实现题315双调旅行售货员问题98
算法实现题316最大k乘积问题100
第4章贪心算法102
习题41活动安排问题的贪心选择102
习题42背包问题的贪心选择性质102
习题43特殊的01背包问题103
习题44程序最优存储问题103
习题45最优装载问题的贪心算法103
习题46Fibonacci序列的Huffman编码104
习题47最优前缀码的编码序列104
习题48任务集独立性问题104
习题49矩阵拟阵104
习题410最小权最大独立子集拟阵105
习题411整数边权Prim算法105
习题412最大权最小生成树105
习题413最短路径的负边权105
习题414整数边权Dijkstra算法106
算法实现题41会场安排问题106
算法实现题42最优合并问题108
算法实现题43磁带最优存储问题108
算法实现题44磁盘文件最优存储问题109
算法实现题45程序存储问题110
算法实现题46最优服务次序问题111
算法实现题47多处最优服务次序问题112
算法实现题48d森林问题113
算法实现题49汽车加油问题114
算法实现题410区间覆盖问题115
算法实现题411硬币找钱问题116
算法实现题412删数问题116
算法实现题413数列极差问题117
算法实现题414嵌套箱问题118
算法实现题415套汇问题119
算法实现题416信号增强装置问题120
算法实现题417磁带最大利用率问题121
算法实现题418非单位时间任务安排问题122
算法实现题419多元Huffman编码问题124
算法实现题420多元Huffman编码变形125
算法实现题421区间相交问题127
算法实现题422任务时间表问题128
第5章回溯法129
习题5\\|1装载问题改进回溯法(一)129
习题5\\|2装载问题改进回溯法(二)130
习题5\\|301背包问题的最优解130
习题5\\|4最大团问题的迭代回溯法131
习题5\\|5旅行售货员问题的费用上界132
习题5\\|6旅行售货员问题的上界函数134
算法实现题5\\|1子集和问题134
算法实现题5\\|2最小长度电路板排列问题135
算法实现题5\\|3最小重量机器设计问题138
算法实现题5\\|4运动员最佳匹配问题139
算法实现题5\\|5无分隔符字典问题140
算法实现题5\\|6无和集问题142
算法实现题5\\|7n色方柱问题143
算法实现题5\\|8整数变换问题147
算法实现题5\\|9拉丁矩阵问题148
算法实现题5\\|10排列宝石问题150
算法实现题5\\|11重复拉丁矩阵问题152
算法实现题5\\|12罗密欧与朱丽叶的迷宫问题154
算法实现题5\\|13工作分配问题156
算法实现题5\\|14独立钻石跳棋问题157
算法实现题5\\|15智力拼图问题163
算法实现题5\\|16布线问题170
算法实现题5\\|17最佳调度问题171
算法实现题5\\|18无优先级运算问题172
算法实现题5\\|19世界名画陈列馆问题174
算法实现题5\\|20世界名画陈列馆问题(不重复监视)177
算法实现题5\\|21部落卫队问题179
算法实现题5\\|22虫蚀算式问题181
算法实现题5\\|23完备环序列问题184
算法实现题5\\|24离散01串问题186
算法实现题5\\|25喷漆机器人问题188
算法实现题5\\|26n2-1谜问题190
第6章分支限界法197
习题6\\|101背包问题的栈式分支限界法197
习题6\\|2用最大堆存储活结点的优先队列式分支限界法199
习题6\\|3团顶点数的上界202
习题6\\|4团顶点数改进的上界202
习题6\\|5修改解旅行售货员问题的分支限界法202
习题6\\|6解旅行售货员问题的分支限界法中保存已产生的排列树204
习题6\\|7电路板排列问题的队列式分支限界法206
算法实现题6\\|1最小长度电路板排列问题(一)207
算法实现题6\\|2最小长度电路板排列问题(二)210
算法实现题6\\|3最小权顶点覆盖问题213
算法实现题6\\|4无向图的最大割问题216
算法实现题6\\|5最小重量机器设计问题219
算法实现题6\\|6运动员最佳匹配问题221
算法实现题6\\|7n后问题223
算法实现题6\\|8圆排列问题225
算法实现题6\\|9布线问题227
算法实现题6\\|10最佳调度问题229
算法实现题6\\|11无优先级运算问题232
算法实现题6\\|12世界名画陈列馆问题234
算法实现题6\\|13骑士征途问题237
算法实现题6\\|14推箱子问题238
算法实现题6\\|15图形变换问题243
算法实现题6\\|16行列变换问题246
算法实现题6\\|17重排n2宫问题247
算法实现题6\\|18最长距离问题251
第7章概率算法257
习题71模拟正态分布随机变量257
习题72随机抽样算法258
习题73随机产生m个整数258
习题74集合大小的概率算法259
习题75生日问题259
习题76易验证问题的拉斯维加斯算法260
习题77用数组模拟有序链表261
习题78O(n3/2)舍伍德型排序算法261
习题79n后问题解的存在性261
习题710整数因子分解算法262
习题711非蒙特卡罗算法的例子263
习题712重复3次的蒙特卡罗算法264
习题713集合随机元素算法264
习题714由蒙特卡罗算法构造拉斯维加斯算法265
习题715产生素数算法266
习题716矩阵方程问题266
算法实现题71模平方根问题267
算法实现题72集合相等问题268
算法实现题73逆矩阵问题269
算法实现题74多项式乘积问题270
算法实现题75皇后控制问题270
算法实现题763SAT问题273
算法实现题77战车问题274
算法实现题78圆排列问题276
算法实现题79骑士控制问题277
算法实现题710骑士对攻问题278
第8章NP完全性理论与近似算法280
习题81析取范式的可满足性280
习题822SAT问题的线性时间算法280
习题83整数规划问题281
习题84划分问题282
习题85最长简单回路问题283
习题86平面图着色问题的绝对近似算法283
习题87最优程序存储问题284
习题88树的最优顶点覆盖285
习题89顶点覆盖算法的性能比286
习题810团的常数性能比近似算法286
习题811售货员问题的常数性能比近似算法287
习题812瓶颈旅行售货员问题287
习题813最优旅行售货员回路不自相交288
习题814集合覆盖问题的实例289
习题815多机调度问题的近似算法290
习题816LPT算法的最坏情况实例291
习题817多机调度问题的多项式时间近似算法292
算法实现题81旅行售货员问题的近似算法292
算法实现题82可满足问题的近似算法294
算法实现题83最大可满足问题的近似算法295
算法实现题84子集和问题的近似算法297
算法实现题85子集和问题的完全多项式时间近似算法297
算法实现题86实现算法greedySetCover298
算法实现题87装箱问题的近似算法First Fit301
算法实现题88装箱问题的近似算法Best Fit303
算法实现题89装箱问题的近似算法First Fit Decreasing305
算法实现题810装箱问题的近似算法Best Fit Decreasing305
算法实现题811装箱问题的近似算法Next Fit306
第9章串与序列的算法309
习题91简单子串搜索算法最坏情况复杂性309
习题92后缀重叠问题309
习题93改进前缀函数310
习题94确定所有匹配位置的KMP算法311
习题95特殊情况下简单子串搜索算法的改进311
习题96简单子串搜索算法的平均性能312
习题97带间隙字符的模式串搜索312
习题98串接的前缀函数313
习题99串的循环旋转314
习题910失败函数性质314
习题911输出函数性质315
习题912后缀数组类315
习题913最长公共扩展查询316
习题914最长公共扩展性质320
习题915后缀数组性质320
习题916后缀数组搜索321
习题917后缀数组快速搜索322
算法实现题91安全基因序列问题326
算法实现题92最长重复子串问题328
算法实现题93最长回文子串问题329
算法实现题94相似基因序列性问题331
算法实现题95计算机病毒问题332
算法实现题96带有子串包含约束的最长公共子序列问题335
算法实现题97多子串排斥约束的最长公共子序列问题336
第10章算法优化策略338
习题101算法obst的正确性338
习题102矩阵连乘问题的O(n2)时间算法338
习题103货物储运问题的费用343
习题104Garsia算法343
算法实现题101货物储运问题346
算法实现题102石子合并问题346
算法实现题103最大运输费用货物储运问题347
算法实现题104五边形问题349
算法实现题105区间图最短路问题352
算法实现题106圆弧区间最短路问题353
算法实现题107双机调度问题353
算法实现题108离线最小值问题361
算法实现题109最近公共祖先问题363
算法实现题1010达尔文芯片问题365
算法实现题1011多柱Hanoi塔问题367
算法实现题1012线性时间Huffman算法370
算法实现题1013单机调度问题371
算法实现题1014最大费用单机调度问题374
算法实现题1015飞机加油问题377
第11章在线算法设计378
习题111在线算法LFU的竞争性378
习题112多读写头磁盘问题的在线算法378
习题113带权页调度问题378
算法实现题111最优页调度问题378
算法实现题112在线LRU页调度382
算法实现题113k服务问题383
参考文献388