|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- /*
- 给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。
- 你可以返回满足此条件的任何数组作为答案。
-
- 示例:
- 输入:[3,1,2,4]
- 输出:[2,4,3,1]
- 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。
-
- 提示:
- 1 <= A.length <= 5000
- 0 <= A[i] <= 5000
- */
复制代码
- /**
- * Note: The returned array must be malloced, assume caller calls free().
- */
- int* sortArrayByParity(int* A, int ASize, int* returnSize){
-
- int* ret_val = (int*)calloc(sizeof(int)*ASize);
- int* pointer_head = NULL;
- int* pointer_tail = NULL;
- int i = 0;
-
- if(ret_val==NULL)
- {
- *returnSize = 0;
- return NULL;
- }
- pointer_head = ret_val;
- pointer_tail = &ret_val[ASize-1];
- for(i=0;i < ASize ; i ++)
- {
- if(A[i] % 2 == 0)
- {
- *pointer_head = A[i];
- pointer_head ++ ;
-
- }
- else
- {
- *pointer_tail = A[i];
- pointer_tail -- ;
- }
- }
-
-
- *returnSize = ASize;
- return ret_val;
- }
复制代码
/*
方案1:
执行用时 :64 ms, 在所有C提交中击败了25.23%的用户
内存消耗 :10.4 MB, 在所有C提交中击败了77.94%的用户
*/
|
|