随笔分类 -  数组

摘要:bool isEven(int n){ return (n&1) == 0;}int gcd(int *a,int length){ int *pbegin = a; int *pend = a + length -1; while(pbegin < pend) { if (!isEven(*pbegin)) { pbegin++; continue; } if (isEven(*pend)) { pend--; continue; } int temp = *pbegin; *pbegin = *pend; *pend = temp; } return 0;... 阅读全文
posted @ 2013-09-03 23:56 l851654152 阅读(437) 评论(0) 推荐(0)
摘要:1.数组求和如果只是普通求和会简单,但是只能使用一行代码该怎么办呢?int sum(int *a,int n){ return n ==0 ? 0 : sum(a,n-1) + a[n-1]; }2.寻找发帖水王int Find(int *a,int n){ int times = 0; int value; for (int i = 0;i max) { max = a[i]; } if (a[i] max) { max = a[i]; } if (a[i] sum) { ahead--; } else { behind++; } }}int main... 阅读全文
posted @ 2013-08-26 13:01 l851654152 阅读(320) 评论(0) 推荐(0)
摘要:可以利用额外的空间则可以遍历两次时间复杂度O(N) 空间复杂度O(1)void Translate(int a[], int b[], int n){ b[0] = 1; for (int i = 1; i = 1; i--) { b[i] *= b[0]; b[0] *= a[i]; }} 阅读全文
posted @ 2013-08-26 12:53 l851654152 阅读(200) 评论(0) 推荐(0)