摘要: 分治法的基本思想是将将一个问题分解成若干个规模更小的子问题,然后依据子问题的解得到原问题的解 这个需要递归解决问题,递归解决的子问题一定要与原问题的结构形式保持一直,如果不能一致,需要变成一致 递归函数传递的参数不能是常数 归并算法和快排都是分治 两个n位数的乘积也能分治,将两个n位数从中间分开,高 阅读全文
posted @ 2021-09-25 17:20 empty_thought 阅读(41) 评论(0) 推荐(0)
摘要: 讨论基于比较的排序算法 排序算法如果依赖比较,时间复杂度做的不会比nlogn更好,我们可以依据比较的过程画一棵决策树,每进行一次比较都会有两种结果(事先不知道数的大小),将这次结果设为根节点,往下引入两个叶子结点,把未分出大小的接着比较,比较到最后会有n!种结果,因为有n!种排列。而通往每个结果的路 阅读全文
posted @ 2021-09-25 16:52 empty_thought 阅读(407) 评论(0) 推荐(0)
摘要: T(n)=T(n-1)+T(n-2),这个是斐波那契的定义,也说明了计算的方法,在数据不大的情况下,求斐波那契的第n项时间复杂度是O(n),但当n很大时,两个n位数的加法也需要O(n),这样会将时间复杂度升到O(n^2),这个能不能用其他方法降低复杂度,用乘法加速加法,用乘法表示加法 两个n位数相乘 阅读全文
posted @ 2021-09-25 15:51 empty_thought 阅读(532) 评论(0) 推荐(0)