创建两个数组,一个存放奇数,一个存放偶数
然后将存放偶数的数组中的值补入奇数的数组中
int* reOrderArray(int* array, int arrayLen, int* returnSize ) { // write code here *returnSize = arrayLen; int* ret = (int*)malloc(sizeof(int)*arrayLen); int brr[arrayLen]; int j = 0; int bj = 0; for(int i = 0;iclass Solution { public: void reOrderArray(vector&array) { int j1 = 0; int j2 = 0; int arr[array.size()]; for(int i = 0;i 方法二: 遍历数组,将奇数放在前面,偶数放在后面
当遇见奇数时,将奇数前面的所有偶数向后移动 一位,然后奇数放在偶数的第一位
依次下去C++
class Solution { public: void reOrderArray(vector& array) { int k = 0; for (int i = 0; i < array.size(); ++i) { if (array[i] & 1) { int temp = array[i]; int j = i; while (j > k) { array[j] = array[j - 1]; j--; } array[k++] = temp; } } } }; C
int* reOrderArray(int* array, int arrayLen, int* returnSize ) { // write code here int index = 0; for (int i = 0; i < arrayLen; i++) { if ((array[i]&1) == 1) { int tmp = array[i]; int j = i; while (j > index) { array[j] = array[j-1]; j--; } array[index++] = tmp; } } *returnSize = arrayLen; return array; }第一种方法在牛客上面运行
时间:2
空间300以下欢迎分享,转载请注明来源:内存溢出
评论列表(0条)