代码改变世界

随笔档案-2018年10月

第三章作业

2018-10-30 08:40 by linzexuan, 132 阅读, 收藏,
摘要: 第三章 动态规划 1)对动态规划的理解 动态规划的基本思想:将待求解的问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。 但动态规划中存在重叠子问题的性质,会造成时间复杂度的增加,使算法的性能变差。 在用动态规划算法时,会用一个表来记录所有已经解决的子问题的答案,只要计算过就 阅读全文

算法第二章上机实践报告

2018-10-14 12:34 by linzexuan, 395 阅读, 收藏,
摘要: 算法第二章上机实践报告 1. 实践题目 7-2 改写二分搜索算法 (20 分) 题目来源:《计算机算法设计与分析》,王晓东 设a[0:n-1]是已排好序的数组,请改写二分搜索算法,使得当x不在数组中时,返回小于x的最大元素位置i和大于x的最小元素位置j。当搜索元素在数组中时,i和j相同,均为x在数组 阅读全文

第二章作业

2018-10-13 14:50 by linzexuan, 160 阅读, 收藏,
摘要: 第二章作业 1.二分思想的体验 二分法思想通过利用有序数据的特点,一定程度上降低了算法的平均时间复杂度O(log(n))。 以二分搜索算法为例: 基本思想:将有序的元素数组a[n]分成个数大致相同的两组: 取a[n/2]与目标元素x进行比较: a) 若x=a[n/2],则找到x且算法终止; b) 若 阅读全文