关于数组的各种算法
一、数组求和
- 1
int calcu_sum(int *a, int n) { return n == 0 ? 0 : calcu_sum(a, n-1) + a[n - 1]; }
1、如果数组元素个数为0,那么和为0。
2、如果数组元素个数为n,那么先求出前n - 1个元素之和,再加上a[n - 1]即可
二、数组排序
链接:常见排序算法及其对应的时间复杂度和空间复杂度 - zwtzz - 博客园 (cnblogs.com)
三、求数组的最大值和最小值
四、数组逆序
//数组逆序 void backward_array(int *a, int n) { int left_index = 0; int right_index = n - 1; while (left_index < right_index) { int temp = a[left_index]; a[left_index++] = a[right_index]; a[right_index--] = temp; } }