问题描述
在长度为N的整形数组中,求连续子串的和的最大值。
例如:1 2 4 5 -11 5 -3,结果为6。
注意:要考虑到数组中元素都为负数的情况。
O(n)解法
java
public static int maxSubSum(int[] a) {
int maxSum = a[0];
int curSum = 0;
for (int j = 0; j < a.length; j++) {
curSum += a[j];
if (curSum > maxSum) {
maxSum = curSum;
} else if (
继续阅读 »
冒泡排序
原理主要是倒序比较
代码如下:
java
class Untitled {
public static void sortMaxMin(int array[]){
int i,j;
int len = array.length;
int temp;
//Boolean flag = true;
for (i = 0;ii;j--) {
if (array[j-1]>array[j]) {
temp = array[j];
继续阅读 »
如何遍历一个数组的元素?在 20 年前,当 JavaScript 出现时,你也许会这样做:
javascript
for (var index = 0; index < myArray.length; index++) {
console.log(myArray[index]);
}
自从 ES5 开始,你可以使用内置的 forEach 方法:
javascript
myArray.forEach(function (value) {
console.log(value);
});
代码更为精简,但有一个小缺点:不能使用 break 语句来跳出循环,也不能使用 return 语句来从闭包函数中返回。
如果有 for
继续阅读 »
PHP源码分析 数组分割.
PHP_array_splic()
array array_splice ( array &$input , int $offset int $length = 0 bool $preserve_keys ] ) 有四个参数 第一个是输入数组,第二个是偏移量 ,第三个是截取长度默认是input的长度, 第四个是bool代表返回的数组是否保留之前的key
继续阅读 »