图书目录

目  录

第 1 章 C 语言编程入门  1 

视频讲解:110 分钟 

【实例 01-01】输出 Hello World! 2 

【实例 01-02】输出多行信息 3 

【实练 01-01】编程输出直角三角形 3 

【实练 01-02】编程输出个人信息 4 

【实例 01-03】输出学生个人信息 4 

【实例 01-04】计算 1+2 和 3+4 并输出结果  5 

【实例 01-05】编程计算并输出(1+8)×2-9÷4+5 的结果   6 

【实例 01-06】输出数字的平方和立方 6 

【实例 01-07】十进制整数 13 的八进制数和十六进制数  7 

【实例 01-08】计算 1.1+2.2 和 3.3+4.4并输出结果  8 

【实例 01-09】计算并输出 8+sin30°的结果 9 

【实练 01-03】求表达式的值 9 

【实例 01-10】IPv6 的地址能分配多久 9 

【实练 01-04】求一元二次方程的根10 

【实例 01-11】计算两个整数的和 10 

【实例 01-12】变量的地址12 

【实练 01-05】计算三个整数的平均值13 

【实例 01-13】定义整型变量13 

【实例 01-14】数据溢出14 

【实例 01-15】计算 1 ~ n 的和   15 

【实练 01-06】等差数列第 n 项的值15 

【实例 01-16】把秒数转换为天、小时、 分钟和秒的方式输出 16 

【实例 01-17】3 位整数的逆序数  17 

【实练 01-07】4 位正整数的数字平方和  18 

【实例 01-18】变量的值自增 1  18 

【实例 01-19】交换两个变量的值18 

【实例 01-20】统计总学生数19 

【实例 01-21】计算圆的面积和周长19 

【实例 01-22】计算表达式的值21 

【实练 01-08】3 个实数的平均值  21 

【实例 01-23】计算多项式的值21 

【实例 01-24】输出字符及其 ASCII 值22 

【实例 01-25】计算两点的中点23 

【实例 01-26】复利本利计算23 

【实例 01-27】计算贷款余额24 

【实例 01-28】输入一个字符,用该字符输出一个等边三角形25 

【实例 01-29】把输入的小写字母转换为大写字母 25 

【实例 01-30】将大写字母替换为字母表中后 n 位的字母 26 

【实例 01-31】用_Bool 类型判断命题结果 26 

【实例 01-32】浮点数相加后取整和取整后相加 27 

【实例 01-33】苹果和虫子Ⅰ27 

【实例 01-34】复合赋值运算符29 

【实例 01-35】逗号运算符和逗号表达式29 

小结 30 

第 2 章 选择语句  31 

视频讲解:156 分钟 

【实例 02-01】3 个整数中的最大值和最小值 31 

【实例 02-02】计算整数 x 的绝对值 34 

【实练 02-01】学生的成绩34 

【实练 02-02】偶数34 

【实例 02-03】判断一个字符是否为小写字母 35 

【实例 02-04】两个整数的排序36 

【实练 02-03】整数的奇偶性37 

【实练 02-04】苹果和虫子37 

【实例 02-05】苹果和虫子Ⅱ37 

【实例 02-06】输出两个浮点数中的较大值38 

【实练 02-05】整数的绝对值39

【实例 02-07】3 个整数的排序  39 

【实练 02-06】4 个整数的排序  39 

【实例 02-08】判断闰年40 

【实练 02-07】两位正整数40 

【实例 02-09】判断某个整数是否与 7 有关 40 

【实例 02-10】三角形判断41 

【实例 02-11】数字拆分 41 

【实例 02-12】谁做了好事42 

【实练 02-08】最佳车的车号43 

【实例 02-13】有一门课不及格的学生43 

【实练 02-09】判断一个给定的点是否在正方形内 44 

【实例 02-14】鸡兔同笼44 

【实练 02-10】分段函数45 

【实例 02-15】摄氏温度与华氏温度的换算 46 

【实例 02-16】计算邮资46 

【实例 02-17】判断成绩等级48 

【实练 02-11】输出星期几对应的英文单词 49 

【实例 02-18】判断字符类型49 

【实例 02-19】疯狂的“双 11”  50 

【实例 02-20】求一元二次方程的根50 

【实例 02-21】计算 BMI53 

【实例 02-22】月之天数54 

【实例 02-23】不多于 5 位的正整数的处理 57 

【实练 02-12】不多于 5 位的正整数的处理 58 

【实例 02-24】检测输入的字母是否为元音字母 58 

【实例 02-25】简单计算器59 

【实练 02-13】简单计算器60 

【实练 02-14】成绩等级60 

小结 60 

第 3 章 循环控制语句   61 

视频讲解:288 分钟 

【实例 03-01】1~n 的整数和  61 

【实练 03-01】求区间内整数的和63 

【实例 03-02】等差数列的和63 

【实练 03-02】求区间内奇数的和64 

【实例 03-03】整数 n 的阶乘64 

【实练 03-03】x 的 n 次幂  65 

【实例 03-04】平均年龄问题65 

【实例 03-05】最大跨度值66 

【实例 03-06】真因子之和67 

【实例 03-07】球弹跳的高度67 

【实例 03-08】兔子繁殖问题68 

【实例 03-09】猴子吃桃69 

【实练 03-04】求年龄70 

【实例 03-10】交错序列前 n 项的和70 

【实练 03-05】分数序列前 n 项和71 

【实例 03-11】特殊 a 串数列的和 71 

【实例 03-12】完数72 

【实例 03-13】质数72 

【实例 03-14】平方根序列求和74 

【实练 03-06】求数列的和74 

【实例 03-15】求π的近似值75 

【实例 03-16】一共来了多少客人76 

【实例 03-17】分离正整数77 

【实练 03-07】统计非负整数中某个数字出现的次数 79 

【实练 03-08】含 k 个 3 的数 79 

【实例 03-18】黑洞数79 

【实例 03-19】数字反转80 

【实练 03-09】判断是否为回文数80 

【实例 03-20】统计字符81 

【实例 03-21】提取数字82 

【实例 03-22】最大公约数83 

【实练 03-10】约分最简分式85 

【实例 03-23】有理数加法85 

【实例 03-24】分解质因子86 

【实例 03-25】龟兔赛跑87 

【实例 03-26】1~100 之间的质数  88 

【实练 03-11】第 n 小的质数 89 

【实例 03-27】数字统计89 

【实练 03-12】与 7 无关的数的平方和90 

【实例 03-28】数字方格90 

【实例 03-29】多项式求值92 

【实例 03-30】棋盘放粮食93 

【实例 03-31】幂级数展开的部分和93 

【实例 03-32】输出直角三角形Ⅰ94 

【实练 03-13】输出三角形字符阵列95 

【实例 03-33】输出直角三角形Ⅱ95 

【实练 03-14】输出倒置的直角三角形96 

【实例 03-34】输出钻石图形96 

【实练 03-15】绘制矩形98 

【实练 03-16】输出沙漏形状98 

【实例 03-35】金币数98 

【实例 03-36】连续因子99 

【实例 03-37】不定方程的解 100 

【实例 03-38】找零钱问题 101 

【实练 03-17】百马百石 103 

【实例 03-39】跳水比赛 103 

【实练 03-18】比饭量 106 

【实练 03-19】谁是嫌疑犯 106 

【实例 03-40】水仙花数 106 

【实例 03-41】同行列对角线的格 107 

【实例 03-42】第几天 108 

小结  109 

第 4 章 函数 110 

视频讲解:192 分钟 

【实例 04-01】输出 3 个整数中的最大值 110 

【实练 04-01】两数的调和平均数 112 

【实练 04-02】检测 x 和 y 是否在闭区间[0, n1]内 112 

【实例 04-02】找出 3 个数的中间数 112 

【实例 04-03】计算 m~n 之间所有整数的和  114 

【实练 04-03】求整数 n! 114 

【实例 04-04】完美立方 114 

【实例 04-05】1 的个数115 

【实例 04-06】哥德巴赫猜想 116 

【实例 04-07】完数统计 117 

【实例 04-08】既是质数又是回文数的个数  118 

【实练 04-04】输出质数 120 

【实练 04-05】寻找质数 120 

【实例 04-09】判断是否与 7 无关 120 

【实例 04-10】丑数 120 

【实例 04-11】x 的算术平方根122 

【实例 04-12】输出 n 行数字金字塔 123 

【实例 04-13】输出个人名片 124 

【实例 04-14】正整数的处理 124 

【实例 04-15】月之天数 126 

【实练 04-06】第几天 127 

【实例 04-16】输出 n 天后的日期 127 

【实例 04-17】最大公约数 128 

【实练 04-07】最小公倍数 129 

【实例 04-18】双亲数 129 

【实例 04-19】计算组合数 130 

【实例 04-20】统计某个整数中某位数字出现的次数 131 

【实例 04-21】计算 sinx 和 cosx 的近似值 132 

【实例 04-22】计算 e 值  133 

【实例 04-23】四则运算长算式 134 

【实例 04-24】一个整数的随机因子 135 

【实例 04-25】100 以内四则运算口算自动出题 136 

【实练 04-08】掷骰子游戏 139 

【实例 04-26】局部变量和全局变量 139 

【实例 04-27】局部变量同名时的作用域  140 

【实例 04-28】局部变量和全局变量同名时的作用域  141 

【实例 04-29】静态局部变量 141 

小结  142 

第 5 章 数组143 

视频讲解:328 分钟 

【实例 05-01】与指定数相同的数的个数 143 

【实例 05-02】数组内存布局 144 

【实例 05-03】整数的统计 146 

【实例 05-04】月之天数 146 

【实练 05-01】计算天数 147 

【实例 05-05】兔子繁殖问题 148 

【实练 05-02】母牛的故事 148 

【实例 05-06】摘桃子 148 

【实例 05-07】大于平均年龄的人 149 

【实练 05-03】与平均年龄相差几岁 150 

【实例 05-08】数组逆置存放 150 

【实例 05-09】向量的点积 151 

【实例 05-10】人民币支付 152 

【实例 05-11】发工资  152 

【实例 05-12】疯狂的“双 11”   154 

【实练 05-04】疯狂的“双 11”(升级版)  154

【实例 05-13】逆序对数 154 

【实例 05-14】两倍问题 155 

【实例 05-15】两数之和 156 

【实练 05-05】数组的距离 157 

【实例 05-16】进制转换 157 

【实例 05-17】校门外的树 158 

【实练 05-06】线段覆盖 159 

【实例 05-18】开关灯问题 160 

【实例 05-19】筛选法找出 1~100 之间的质数  161 

【实例 05-20】第 n 小的质数 162 

【实练 05-07】质数对猜想 163 

【实例 05-21】查找特定的值 163 

【实例 05-22】求最小值及其下标 164 

【实例 05-23】移动 0164 

【实例 05-24】真因子之和 165 

【实例 05-25】均值与误差 166 

【实练 05-08】青年歌手大奖赛 167 

【实例 05-26】装箱问题 167 

【实例 05-27】删除元素 169 

【实例 05-28】最长平台问题 169 

【实例 05-29】有序整数的去重 171 

【实例 05-30】移除数组值为特定值的所有元素  172 

【实例 05-31】第 k 小的数  173 

【实例 05-32】王老师随机点名 173 

【实练 05-09】绝对值排序 174 

【实练 05-10】最接近的数 175 

【实例 05-33】数列有序 175 

【实练 05-11】寻找第 k 大的数  176 

【实例 05-34】组成最小数 176 

【实例 05-35】直方图 177 

【实练 05-12】数字统计 177 

【实例 05-36】颜色分类 178 

【实例 05-37】大于平均年龄 179 

【实例 05-38】二维数组在内存中的布局 180 

【实例 05-39】矩阵交换行 181 

【实练 05-13】矩阵交换列 182 

【实例 05-40】计算矩阵边缘元素之和 182 

【实练 05-14】主次对角线上的元素之和 183 

【实例 05-41】图像模糊处理 183 

【实练 05-15】矩阵的加法 185 

【实练 05-16】图像相似度 185 

【实例 05-42】矩阵的乘法 185 

【实例 05-43】杨辉三角 186 

【实例 05-44】魔方矩阵 187 

【实例 05-45】螺旋矩阵 189 

【实练 05-17】矩阵的螺旋(回形)遍历 190 

【实例 05-46】蛇形矩阵 190 

【实练 05-18】右上左下遍历 191 

小结  192 

第 6 章  指针193 

视频讲解:276 分钟 

【实例 06-01】使用指针变量存储整型变量的地址  193 

【实练 06-01】指针变量 194 

【实例 06-02】使用未初始化的指针变量 195 

【实例 06-03】指向无效内存空间的指针 196 

【实例 06-04】指针变量所占字节数 196 

【实例 06-05】3 个整数的排序197 

【实练 06-02】4 个整数的排序198 

【实例 06-06】const 与指针变量  198 

【实例 06-07】日期转换 200 

【实例 06-08】通过指针访问数组 201 

【实例 06-09】将数组的元素值逆置后输出  201 

【实例 06-10】 *p++、*++p 和(*p)++203 

【实例 06-11】整数序列的元素最大跨度值  204 

【实练 06-03】向量的点积 206 

【实例 06-12】与最大数不相同的数的和 206 

【实练 06-04】多数元素 207 

【实例 06-13】选组长 208 

【实例 06-14】出现次数最多的整数 209 

【实例 06-15】存在重复元素 210 

【实例 06-16】无序整数的去重 211 

【实练 06-05】将数组分成和相等的三个部分  212 

【实例 06-17】循环右移数组 212 

【实练 06-06】循环左移数组 214 

【实例 06-18】数组形式的整数加法 214 

【实例 06-19】中位数 215 

【实例 06-20】集合的并集 217 

【实例 06-21】合并两个有序数组 219 

【实例 06-22】两个数组非共有的元素 220 

【实练 06-07】找出两个数组共有的元素 222 

【实例 06-23】数组的相对排序 222 

【实练 06-08】出现最多的数字 223 

【实例 06-24】void*数据类型   223 

【实例 06-25】动态一维数组 224 

【实例 06-26】欢乐的跳跃 227 

【实例 06-27】随机生成指定长度的字符串  229 

【实例 06-28】指针数组 230 

【实例 06-29】日历问题 230 

【实例 06-30】杨辉三角—不等长的动态二维数组  232 

【实例 06-31】二级指针 233 

【实例 06-32】矩阵求和 233 

【实练 06-09】矩阵的旋转 235 

【实例 06-33】通过行指针输出二维数组 235 

【实例 06-34】计算鞍点 236 

【实练 06-10】最匹配的矩阵 237 

【实例 06-35】返回指针的函数 238 

【实例 06-36】通过函数指针调用不同的函数  239 

【实例 06-37】输入两个运算数,输出四则运算的结果  240 

【实例 06-38】qsort 函数与函数指针   241 

【实例 06-39】最大间距 242 

【实例 06-40】数字黑洞 243 

小结  244 

第 7 章 字符串  245 

视频讲解:376 分钟 

【实例 07-01】字符数组与字符串 245 

【实例 07-02】标题统计 246 

【实练 07-01】基因相关性 247 

【实例 07-03】被 3 整除 248 

【实例 07-04】信息加密 249 

【实练 07-02】信息加密 250 

【实例 07-05】信息解密 250 

【实例 07-06】加密的病历单 251 

【实练 07-03】字符串加密 253 

【实例 07-07】统计元音字母 253 

【实例 07-08】字符数组和字符串的区别 254 

【实例 07-09】统计字符数 255 

【实例 07-10】字母重排 255 

【实例 07-11】第一个只出现一次的字符  257 

【实例 07-12】字符串常量 258 

【实例 07-13】连续出现的字符 259 

【实例 07-14】字符串 p 型编码 260 

【实例 07-15】统计单词 261 

【实练 07-04】首字母变大写 262 

【实例 07-16】单词的长度 262 

【实例 07-17】最长的单词 263 

【实例 07-18】特定单词的个数 265 

【实练 07-05】比较字符串大小 266 

【实例 07-19】单词的翻转 266 

【实例 07-20】删除多余的空格 267 

【实练 07-06】删除多余的空格(升级版)  268 

【实例 07-21】说反话 268 

【实例 07-22】单词的排序 269 

【实例 07-23】DNA 排序  271 

【实例 07-24】替换单词 273 

【实例 07-25】念数字 274 

【实练 07-07】田径运动会 275 

【实例 07-26】电话号码生成英语单词 275 

【实练 07-08】478-3279  276 

【实例 07-27】回文密码 277 

【实例 07-28】验证邮箱 278 

【实练 07-09】检查合法 C 标识符   279 

【实例 07-29】安全密码 280 

【实练 07-10】IP 地址判断 281 

【实例 07-30】验证子序列 281 

【实例 07-31】验证子串 283 

【实例 07-32】字符环 283 

【实例 07-33】字符最大跨距 285 

【实例 07-34】删除单词后缀 286 

【实例 07-35】删除子串 287 

【实例 07-36】十进制形式的 IP 地址  288 

【实练 07-11】十六进制转十进制  290 

【实例 07-37】十六进制形式的 IP 地址  290 

【实练 07-12】N 进制转 M 进制   291 

【实例 07-38】ISBN 号码 291 

【实例 07-39】出书最多的作者 292 

【实例 07-40】大整数加法 294

【实练 07-13】大整数减法 296 

【实练 07-14】求一个不超过 10000 的整数的阶乘  296 

小结  296 

第 8 章  结构体、结构体数组与链表  297 

视频讲解:280 分钟 

【实例 08-01】输出学生信息 297 

【实练 08-01】图书的结构体类型 300 

【实例 08-02】计算两点间的距离 300 

【实练 08-02】三角形面积 301 

【实例 08-03】计算矩形的面积 301 

【实例 08-04】结构体变量所占字节数 302 

【实练 08-03】计算结构体变量所占字节数  303 

【实例 08-05】输出 n 天后的日期 303 

【实练 08-04】日期的前一天 305 

【实例 08-06】结构体中的字符数组和字符指针  305 

【实例 08-07】成绩统计 305 

【实例 08-08】账户查询 306 

【实例 08-09】浮点数格式 308 

【实例 08-10】求集合的并集 309 

【实练 08-05】集合的交运算和差运算 310 

【实例 08-11】按平均成绩排序  310 

【实练 08-06】生日相同Ⅰ 312 

【实例 08-12】身高排序 313 

【实练 08-07】分数线划定 314 

【实例 08-13】谁是解题数量最多的学生 314 

【实例 08-14】计算与指定数字相同的数的个数(链表)  316 

【实例 08-15】删除整数序列中与 x 相等的元素  318 

【实例 08-16】按平均成绩排序(链表) 321 

【实练 08-08】生日相同Ⅱ 323 

【实例 08-17】去重排序 323 

【实例 08-18】子串计算 325 

【实练 08-09】集合并运算(要求使用链表存储集合)  327 

【实例 08-19】相交链表 328 

【实例 08-20】删除链表倒数第 n 个节点 331 

【实例 08-21】删除有序链表中的重复元素Ⅰ  333 

【实例 08-22】删除有序链表中的重复元素Ⅱ  333 

【实例 08-23】反转链表Ⅰ 335 

【实例 08-24】反转链表Ⅱ 335 

【实练 08-10】重排链表中的节点 336 

【实例 08-25】分隔链表 337 

【实例 08-26】猴子选大王(循环链表) 338 

【实例 08-27】环形链表 341 

【实例 08-28】序列操作(双向链表) 342 

【实例 08-29】使用联合类型存储数据 345 

【实例 08-30】位字段 347 

小结  348 

第 9 章 位运算349 

视频讲解:87 分钟 

【实例 09-01】判断是奇数还是偶数 349 

【实例 09-02】区间位对应的整数Ⅰ 350 

【实练 09-01】计算二进制数对应的整数 351 

【实例 09-03】将二进制位设置成 1351 

【实练 09-02】二进制数置 1352 

【实例 09-04】2 的 n 次幂倍352 

【实例 09-05】区间位对应的整数Ⅱ 353 

【实练 09-03】二进制位整数 353 

【实例 09-06】位取反 353 

【实练 09-04】取反 355 

【实例 09-07】交换两个变量的值 355 

【实例 09-08】简单的加密 355 

【实例 09-09】只出现一次的整数 356 

【实例 09-10】某些位清零 356 

【实练 09-05】清零 357 

【实例 09-11】将区间位设置成 1357 

【实练 09-06】设置为 1357 

【实例 09-12】区间位赋值 357 

【实例 09-13】1 的个数358 

【实例 09-14】2 的整数幂359 

【实例 09-15】集合的子集 360 

小结  361 

第 10 章 文件   362 

视频讲解:88 分钟 

【实例 10-01】文件的打开与关闭 362 

【实练 10-01】打开文件 364 

【实例 10-02】从文件中读取单词 364 

【实练 10-02】统计字符个数 367 

【实例 10-03】复制文件 367

【实练 10-03】写入文本文件 368 

【实例 10-04】格式化方式读/写文件   368 

【实例 10-05】数据块的读/写   370 

【实练 10-04】读/写学生信息   373 

【实例 10-06】随机读/写文件   373 

【实练 10-05】青年歌手大赛记分程序 375 

小结  375 

第 11 章 递归  376 

视频讲解:237 分钟 

【实例 11-01】计算 n! 377 

【实练 11-01】丑数  378 

【实例 11-02】非负整数位数  378 

【实练 11-02】判断偶数  379 

【实例 11-03】Ackermann 函数  379 

【实练 11-03】计算组合数  380 

【实例 11-04】二进制输出整数  380 

【实练 11-04】正序输出非负整数 x 的每一位  381 

【实练 11-05】计算 a 的 n 次方  381 

【实例 11-05】爬楼梯  381 

【实例 11-06】青蛙过河  382 

【实例 11-07】最大公约数  384 

【实例 11-08】选择排序  384 

【实练 11-06】冒泡排序  385 

【实例 11-09】判断一个单链表是否有序  385 

【实例 11-10】反转链表  386 

【实例 11-11】从链表中移除节点  386 

【实例 11-12】汉诺塔问题  388 

【实例 11-13】红与黑  391 

【实例 11-14】魔幻二维数组  392 

【实例 11-15】分解因子  394 

【实练 11-07】整数划分问题  395 

【实练 11-08】放苹果  395 

【实例 11-16】折半查找  396 

【实练 11-09】搜索插入位置  397 

【实例 11-17】两数之和  397 

【实例 11-18】归并排序  398 

【实例 11-19】数组中的逆序对  400 

【实练 11-10】统计数字  401 

【实例 11-20】快速排序  402 

【实例 11-21】排序链表  403 

【实练 11-11】使用归并排序对链表进行排序  405 

【实例 11-22】分书问题  405 

【实例 11-23】n 个整数的全排列407 

【实例 11-24】八皇后  408 

【实例 11-25】迷宫问题  410 

【实练 11-12】红与黑(深度优先搜索算法)  413 

【实例 11-26】跳马问题  413 

【实练 11-13】集合分解  415 

小结  415 

第 12 章 栈和队列   417 

视频讲解:149 分钟 

【实例 12-01】十进制非负整数转换为二进制数输出  417 

【实例 12-02】D 进制的 A+B 420 

【实练 12-01】不多于 5 位的正整数的输出  420 

【实例 12-03】删除最外层的括号 420 

【实例 12-04】括号匹配 422 

【实练 12-02】括号的最大嵌套深度 423 

【实练 12-03】删除无效括号 423 

【实例 12-05】写出这个数 423 

【实例 12-06】回文链表 424 

【实例 12-07】说反话 425 

【实例 12-08】后缀表达式计算 426 

【实例 12-09】棒球比赛 427 

【实例 12-10】比较含退格符的字符串 428 

【实例 12-11】计算中缀表达式  429 

【实例 12-12】小孩报数问题 433 

【实例 12-13】银行业务队列简单模拟 435 

【实例 12-14】Freda 的队列 437 

【实例 12-15】买票需要的时间 438 

【实例 12-16】Rabin-Karp 字符串匹配  440 

【实例 12-17】机器翻译 441 

【实例 12-18】Blah 数集 442 

【实例 12-19】滑动窗口 443 

【实例 12-20】判断栈和队列 445 

小结  446 

第 13 章 前缀和与差分 447 

视频讲解:91 分钟 

【实例 13-01】子数组的和 447 

【实例 13-02】和为 k 的子数组个数  448 

【实练 13-01】连续自然数的和 449

【实例 13-03】最大子段和 449 

【实练 13-02】长度为 k 的子数组的最大和  450 

【实例 13-04】字符的个数 450 

【实例 13-05】操作后的序列 451 

【实练 13-03】种树 452 

【实例 13-06】校门外的树 453 

【实例 13-07】子矩阵的和 454 

【实练 13-04】数星星 455 

【实例 13-08】修改后的矩阵 456 

【实例 13-09】地毯问题 457 

【实练 13-05】区间和的个数 459 

小结  459 

第 14 章  贪心算法  460 

视频讲解:79 分钟 

【实例 14-01】分发饼干 460 

【实练 14-01】最大总和 462 

【实例 14-02】三角形的最大周长 462 

【实练 14-02】字符串中的最大奇数 463 

【实例 14-03】6 和 9 组成的最大数字464 

【实例 14-04】活动安排 465 

【实例 14-05】背包问题Ⅰ 467 

【实例 14-06】最优分解 469 

【实练 14-03】多处最优服务次序问题 470 

【实例 14-07】区间覆盖 470 

【实例 14-08】删数问题 472 

【实练 14-04】最大数 473 

【实例 14-09】背包问题Ⅱ 473 

【实例 14-10】最优合并问题 474 

【实练 14-05】字典序最小问题 476 

小结  477 

第 15 章  动态规划  478 

视频讲解:312 分钟 

【实例 15-01】爬楼梯 478 

【实例 15-02】数塔问题 479 

【实练 15-01】三角形最小路径和 481 

【实例 15-03】最少通行费 481 

【实例 15-04】最短路径 483 

【实例 15-05】不同的路径 485 

【实例 15-06】子数组的最大和 486 

【实练 15-02】子数组和的绝对值的最大值  487 

【实练 15-03】环状子数组的最大和 487 

【实例 15-07】拆分乘积最大的整数 487 

【实例 15-08】聪明的小王 488 

【实例 15-09】最长上升子序列 490 

【实练 15-04】求最长不下降序列 491 

【实例 15-10】拦截导弹 491 

【实练 15-05】登山 493 

【实例 15-11】友好城市  493 

【实例 15-12】信封套娃 494 

【实例 15-13】合唱队形 496 

【实例 15-14】挖地雷 497 

【实例 15-15】0-1 背包问题 499 

【实例 15-16】机器分配 500 

【实例 15-17】购物最大优惠 502 

【实例 15-18】装箱问题 503 

【实例 15-19】完全背包问题 504 

【实例 15-20】多重背包问题 505 

【实例 15-21】将整数划分成 k 个整数  506 

【实练 15-06】放苹果 507 

【实练 15-07】划分成若干正整数之和 507 

【实练 15-08】划分成若干不超过 k 的正整数之和  508 

【实练 15-09】划分成若干不同的正整数之和  508 

【实练 15-10】划分成若干奇数之和 508 

【实例 15-22】兑换零钱最少 508 

【实练 15-11】完全平方数  509 

【实例 15-23】兑换零钱方案数问题Ⅰ 509 

【实例 15-24】兑换零钱方案数问题Ⅱ 511 

【实练 15-12】买书 511 

【实例 15-25】将整数拆分成质数 512 

【实例 15-26】最长公共子序列 513 

【实例 15-27】最长回文子串 514 

小结  515 

附录 A 运算符的优先级与结合性  516 

附录 B 常用字符的 ASCII 码对照表 517