摘要:
1. 你对回溯算法的理解 回溯算法类似枚举的搜索尝试过程,主要在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。其基本思想是,在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根结点出发深度探索解空间树。当探索到某一结点时,要先判断该结点是否包含问题的解, 阅读全文
摘要:
1.你对贪心算法的理解 在对问题求解时,总是做出在当前看来是最好的选择,也就是说,不从整体最优上加以考虑,它所做出的仅是某种意义上的局部最优解。贪心算法的使用首先要明确什么是最优解,然后再明确什么是子问题的最优解,最后再通过子问题的最优解堆叠出全局最优解。 2.请选择一道作业题目说明你的算法满足贪心 阅读全文
摘要:
1.选自题目:单调递增最长子序列 1.1 d[i]表示以第i个数为结尾的最长递增子序列,a[i]表示输入的序列;递归方程式为:d[i] = max{d[j] + 1} (0 <= j < i 且 a[i] > a[j]) ;将a[0]、d[0]均初始化为0 1.2 表的维度:一维;填表范围:1 ~ 阅读全文
摘要:
1.实践题目名称 第二章 7-1 最大子列和问题 2.问题描述 给定K个整数组成的序列{ N1, N2, ..., NK },“连续子列”被定义为{ Ni, Ni+1, ..., Nj },其中 1。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序 阅读全文
摘要:
第一问:通过最近的作业练习,了解到分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。 分治法解题的一般步骤: (1)分解,将要解决的问题划分成若干规模较小的同类问题; (2)求解,当子问题划分得足够小时,用较 阅读全文
摘要:
请上网了解编码规范,说明你本学期的编码遵循哪个规范及该规范的链接。 规范编码,可以促进团队合作,可以减少bug处理,可以降低维护成本,有助于代码审查,有助于程序员自身的成长,而我将遵循Google编码规范,在命名规范这一块,对于函数命名,变量命名,文件命名要有描述性且少用缩写;对于类型名称的每个单词 阅读全文
摘要:
类中方法的声明和使用 方法:描述类应该具有的功能。 比如:Math类:sqrt() 、random()…… Scanner类:next×××()……【用于我们从键盘上获取数据】 Arrays类:sort()、binarySearch()、toString()、equals()【排序、查找、输出数组、 阅读全文
摘要:
类中属性的使用 属性(成员变量) VS 局部变量 1.相同点: 1.1定义变量的格式:数据类型 变量名 = 变量值【有时变量值不给出】 1.2先声明,后使用 1.3变量都有其对应的作用域 2.不同点: 2.1在类中申明的位置不同【 属性:直接定义在类的一对{ }内; 局部变量:声明在方法内、方法形参 阅读全文