随笔分类 -  程序员面试精选100题

摘要:思想完全是采用快速排序:bool isEven_(int n)//是否是偶数{ return (n&1)==0;}void swapOddEven(int arr[], int left, int right){ int i=left; int j=right; int temp=arr[left]; if(left > right) { return ; } while(i<j) { while(i<j && isEven_(arr[j])) j--; arr[i]=arr[... 阅读全文
posted @ 2012-10-01 16:25 logzh 阅读(197) 评论(0) 推荐(0)
摘要:解法三:考虑数组的第一个元素A[0],以及最大的一段数组(A[i]...A[j])跟A[0]的关系,有一下三种情况:1、0=i=j 元素A[0]本身构成和最大一段;2、0=i<j 和最大一段从A[0]开始3、0<i 和最大一段和A[0]没有关系所以假设:已经知道(A[1]...An-1])的最大和段之和为all[1];(A[1]...An-1])的包含A[1]的最大和段之和为start[1];那么all[0]=max{A[0], A[0]+start[1], all[1]};而start[0]=max{A[0], A[0]+start[1]};所以all[0]=max{star.. 阅读全文
posted @ 2012-09-18 10:15 logzh 阅读(221) 评论(0) 推荐(0)