给定一个数组,求两个不相交的并且是连续的子数组A和B(位置连续),满足|sum(A) - sum(B)|最大(和之差的绝对值)。例如[2, -1, -2, 1, -4, 2, 8],可以得到A=[-1, -2, 1, -4], B=[2, 8],最大差为16。...
分类:
编程语言 时间:
2015-05-12 15:45:09
阅读次数:
153
题目:设子数组a[0:k]和a[k+1:n-1]已排好序(0<=k<=n-2)。试设计一个合并这两个子数组为排好序的数组a[0:n-1]的算法。要求算法的在最坏情况下所用的计算时间为O(n),且只用到O(1)的辅助空间。...
分类:
编程语言 时间:
2015-05-08 16:37:20
阅读次数:
143
题目描述给定一个数组a[0,...,n-1],求其最大子数组(长度>=1)和输入描述第一行一个整数n(1 2 using namespace std; 3 4 int main() 5 { 6 int n, num; 7 long sum, max; 8 cin >> n;...
分类:
编程语言 时间:
2015-05-02 15:09:27
阅读次数:
672
1 问题:返回一个二维整数数组中最大联通子数组的和2思路:对n*m的二维数组进行分解,分解为n个一维数组,再先求这n个一维数组的最大子数组和,并记下每行最大一维子数组的下标如2-5,这是就会分两种情况第一种是行之间的最大子数组是相连的,如第一行是2-5,第二行是3-6,这是直接相加就行。第二种是不相...
分类:
移动开发 时间:
2015-04-27 12:46:33
阅读次数:
206
1. 快速排序描述:基于分治模式,分为分解、解决和合并三部分;1)分解:将数组A[p..r]划分为两个子数组A[p..q-1]和A[q+1..r],是的A[p..q-1]中每个元素都小于或等于A(q)2)解决:通过递归调用快速排序,对子数组A[p..q-1]和A[q+1..r]排序3)合并:合并两个...
分类:
编程语言 时间:
2015-04-23 19:22:00
阅读次数:
127
1,题目要求根据软件工程概论--《环状一维数组最大子数组和》和《二维数组最大子数组和》两篇博客,求环状二维数组的和。2,思路设计根据前面两篇博客思路做参考。在二维数组的基础上扩充二维数组的列为2*col-1。再进行二维数组的求和即可。3,代码#include #includeusing namesp...
分类:
编程语言 时间:
2015-04-22 22:06:29
阅读次数:
176
#includeusing namespace std;#define N 4void maxhe(int a[],int &s,int &jmin,int &jmax){ int sum=a[0],b=a[0],x=0,y=0; int j=1; while((j-x=0)...
分类:
编程语言 时间:
2015-04-22 00:22:08
阅读次数:
158
要求:输入一个二维整形数组,数组里有正数也有负数。二维数组首尾相接,象个一条首尾相接带子一样。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。思路:根据前几次所做的关于一维及二维数组的思路,将其整合。把二维数组转换成一维数组,再用求一维数组最大子数组和(环)...
分类:
编程语言 时间:
2015-04-21 08:19:16
阅读次数:
228
结对成员:侯涛亮:主要负责程序设计编写代码。 朱少辉:主要负责程序调试和修改。题目:一个首尾相接的二维数组,其中有有正数,有负数,求它的最大子矩阵。思路:该题的解决方法是求二维数组最大子矩阵的和与求一维首位相连最大子数组和结合。求解环的最大子数组可分为两种情况。第一种:当数组下标没有...
分类:
编程语言 时间:
2015-04-20 10:59:53
阅读次数:
147
1.设计思想 要求得环形一维数组的最大子数组之和,首先要将其首尾相接。对于这个长度为n的一维数组,将其数组的前n-2项补在该一维数组的后面即可实现环形数组求最大子数组和。这样就形成了一个新数组,然后利用第一次求最大子数组和的算法,然后加上限定条件即子数组的长度不能超过整个数组的长度。但是也在该算法上...
分类:
编程语言 时间:
2015-04-16 13:55:34
阅读次数:
141