第一:将数组首尾相连,形成循环数组,依然输出最大子数组的和 ...
分类:
编程语言 时间:
2019-03-23 22:13:36
阅读次数:
168
异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1),这些法则与加法是相同的,只是不带进位,所以异或常被认作不进位加法。 前缀树详解:https://www.cnblogs.com/tianzeng/p/10584650.html ...
分类:
编程语言 时间:
2019-03-23 17:29:49
阅读次数:
208
上次完成最大子序和算是对这类算法的入门,现在想要对其进行加深学习。 最大子数组的问题里对我印象最深的就是动态规划的解决方法——“解其不同部分(即子问题),再根据子问题的解以得出原问题的”。这种解决方法十分常用,而其在一维数组中的总结以及最优解就是Kadane算法。 Kadane算法 作为最简洁的算法 ...
分类:
编程语言 时间:
2019-03-23 12:59:02
阅读次数:
222
思路:实际上是一个动态规划问题。设sum[i]为以第i个元素结尾且和最大的连续子数组。假设对于元素i,所有以它前面的元素结尾的子数组的长度都已经求得,那么以第i个元素结尾且和最大的连续子数组实际上,要么是以第i-1个元素结尾且和最大的连续子数组加上这个元素,要么是只包含第i个元素,即sum[i]= ...
分类:
其他好文 时间:
2019-03-20 15:54:51
阅读次数:
152
思路:先建立一个文件,将随机生成的数据存入文件中,然后读取文件数据对数据进行判断从而求出最大子数组的和。 ...
分类:
其他好文 时间:
2019-03-17 23:35:54
阅读次数:
176
本次的任务是 要求数组从文件读取。 如果输入的数组很大, 并且有很多大的数字, 就会产生比较大的结果 (考虑一下数的溢出), 请保证你的程序能正常输出。 另外, 如果输入文件的参数有错误, 这个程序应该能正常退出, 并显示相应的错误信息。 任何输入错误都不能导致你的程序崩溃。 由于自己的水平还不高, ...
分类:
编程语言 时间:
2019-03-17 21:36:13
阅读次数:
154
在可以进行控制台数据的输入以及子数组的求和后,我们进行了下一步:从文件中导入数据并进行子数组求和。然而这一步并不简单,难点一:从文件中导入并保证数据的完整性;难点二:保证数据的是可以进行求和的,即保证数据是数字;难点三:保证数字进行求和后还完整。 这三项我满足了第一项,从文件中导入数据并可以保证数据 ...
分类:
编程语言 时间:
2019-03-17 20:10:33
阅读次数:
188
要求 1.输入一个整型数组,数组里有正数也有负数。 2.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 3.求所有子数组的和的最大值。要求时间复杂度为O(n)。 4.要求数组从文件读取 5.如果输入文件的参数有错误, 这个程序应该能正常退出, 并显示相应的错误信息。 思路及源代码 ...
分类:
编程语言 时间:
2019-03-17 18:22:18
阅读次数:
165
# 1、在有序表中查找两数组指定的和,双指针法# 2、滑动窗口 : 连续子数组之和# 3、二分查找 : 顺序数组中查找特定的值# 4、递归程序的真正的构建是从底向上的,这就是为什么递归终止条件要写在最前面# 参见 反转链表的递归程序 LeetCode206# 5、 链表归并排序的递归过程,要好好体会 ...
分类:
其他好文 时间:
2019-03-17 15:53:17
阅读次数:
186
这周我们老师布置了在上一周的基础上实现文件的存储以及读取,刚开始我先将文件存储以及相关的程序写出来,通过询问老师发现对于数组空间的定义可以使用变量形式,经过这个方法我完成了对任意大小的数据可以进行储存以及读取,之后有听取其他同学的惊讶能使用biginteger类来实现大数据的存储。 源代码: ...
分类:
编程语言 时间:
2019-03-17 14:04:00
阅读次数:
187