《挑战程序设计竞赛》读书笔记(五)尺取法。本文介绍了尺取法。针对尺取法的思想,扩展介绍了双指针这种比较通用的方法,并给出了几个例子和对应的解法。
《挑战程序设计竞赛》读书笔记(四)格点问题的证明
《挑战程序设计竞赛》2.6节第一道题中讲解了求线段上格点个数的问题,该解答给出了结果,但中间过程省略了不少内容。本文补充了相关的证明和解释。
问题描述如下:
格点是指平面坐标系中,横纵坐标都是整数的点。给定平面上两个格点,P1(x1,y1),P2(x2,y2),则线段P1P2上除了P1和P2外,有几个格点?事实上,该问题答案为|x2-x1|和|y2-y1|的最大公约数减1,并给出了一个图示。本文对该结论给出了证明。
《挑战程序设计竞赛》读书笔记(三)图算法 图搜索 最短路 最小生成树
本文是《挑战程序设计竞赛》读书笔记的第三篇,主要涉及图算法,图的搜索,单源最短路和所有点对的最短路Floyd算法,最小生成树算法。文中解释了Roadblocks问题:求出图中指定的起点s和终点e之间次短路(第二短的路径);Conscription招兵问题。
《挑战程序设计竞赛》读书笔记(二)贪心算法 动态规划
本文阅读了《挑战程序设计竞赛》一书的第二章节,做了读书笔记,主要涉及贪心算法和动态规划,包括区间调度问题,01背包的动态规划解法,最长公共子串LCS问题。