josda

导航

2020年12月19日 #

算法第五章博客

摘要: 一、对回溯法的理解 首先要学会建立树模型,然后按深度优先进行遍历,当条件不满足时,返回上一节点,再寻找符合条件的分支进行查找,一般的回溯法时间复杂度较高,但是在理解上难度比较低,如果运用剪枝,可以减少计算,但是不会在本质上减少时间复杂度。 二、你学习《算法分析与设计》课程的收获 学到了一些算法,对同 阅读全文

posted @ 2020-12-19 14:44 josda 阅读(89) 评论(0) 推荐(0) 编辑

2020年11月13日 #

算法第四章作业

摘要: 1.你对贪心算法的理解 贪心算法相对于动态规划来说,我觉得有一定的相似性,但是相比起来贪心算法更加无脑一点,更直接一点,只要每个子问题都只要是最优的解,合并起来就是最优解。 2.请选择一道作业题目说明你的算法满足贪心选择性质 4-2 删数问题,遍历后找到顺序下来最大的数,如果没有则从最后一个删起,但 阅读全文

posted @ 2020-11-13 17:46 josda 阅读(54) 评论(0) 推荐(0) 编辑

2020年11月1日 #

算法第三章作业

摘要: 1.单调递增最长子序列 1.1 根据最优子结构性质,列出递归方程式, dp[i]=max(dp[j]+1,dp[i]) (a[i]>a[j]) 1.2 给出填表法中表的维度、填表范围和填表顺序。 一维数组表,填表范围: 0 < n , 填表顺序:从左向右依次填写 1.3 分析该算法的时间和空间复杂度 阅读全文

posted @ 2020-11-01 01:40 josda 阅读(63) 评论(0) 推荐(0) 编辑

2020年10月3日 #

算法第二章上机实践报告

摘要: 1.实践题目名称: 最大子列和问题 2.问题描述: 给定K个整数组成的序列{ N​1​​, N​2​​, ..., N​K​​ },“连续子列”被定义为{ N​i​​, N​i+1​​, ..., N​j​​ },其中 1。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 阅读全文

posted @ 2020-10-03 19:14 josda 阅读(87) 评论(0) 推荐(0) 编辑

第二章作业

摘要: 1.分治法的主要解题策略就是把一个大问题分解成若干个小问题,再合并起来,完成对总问题的解答。 分治法一般利用递归进行设计,用递归有利于代码的简洁与增加可读性,问题是当问题规模变大时,可能效率会不高,并且占用太多系统资源 2.结对编程我们一般在宿舍里面进行讨论,因为物理距离接近,比较方便,而且两个人的 阅读全文

posted @ 2020-10-03 18:51 josda 阅读(66) 评论(0) 推荐(0) 编辑