随笔分类 - 数组
摘要: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;...
阅读全文
摘要: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...
阅读全文
摘要:可以利用额外的空间则可以遍历两次时间复杂度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]; }}
阅读全文

浙公网安备 33010602011771号