摘要: 问题: 求解两个数组的最长公共子序列LCS(Longest Common Subsequence)。 思路: 如果要求一个问题的最优解(通常是最大值或者最小值),而且该问题能够分解成若干个子问题,并且小问题之间也存在重叠的子问题,则考虑采用动态规划。 设 X=(x1,x2,.....xn) 和 Y= 阅读全文
posted @ 2018-09-04 20:50 110255 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 问题: 求解一个数组的最长递增子序列。 思路: 如果要求一个问题的最优解(通常是最大值或者最小值),而且该问题能够分解成若干个子问题,并且小问题之间也存在重叠的子问题,则考虑采用动态规划。 示例: code: 阅读全文
posted @ 2018-09-04 18:57 110255 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 1.快速排序 采用分治策略,O(nlgn); 2. 归并排序 典型的分治思想,将数组分成若干部分,然后两两归并。O(nlgn) 阅读全文
posted @ 2018-09-04 11:43 110255 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 一、二分查找 二分查找算法又称折半查找算法。 其算法的基本思想是:在有序表中,取中间的记录作为比较关键字,若给定值与中间记录的关键字相等,则查找成功;若给定的值小于中间记录的关键字,则在中间记录的左半区间继续查找;若给定值大于中间记录的关键字,则在中间记录的右半区间继续查找;不断重复这个过程,直到查 阅读全文
posted @ 2018-09-04 10:53 110255 阅读(180) 评论(0) 推荐(0) 编辑