324.h 516 B

1234567891011121314151617
  1. static int cmp(const void *pa, const void *pb) {
  2. return *(int *)pa - *(int *)pb;
  3. }
  4. void wiggleSort(int* nums, int numsSize) {
  5. int * arr = (int *)malloc(sizeof(int) * numsSize);
  6. memcpy(arr, nums, sizeof(int) * numsSize);
  7. qsort(arr, numsSize, sizeof(int), cmp);
  8. int x = (numsSize + 1) / 2;
  9. for (int i = 0, j = x - 1, k = numsSize - 1; i < numsSize; i += 2, j--, k--) {
  10. nums[i] = arr[j];
  11. if (i + 1 < numsSize) {
  12. nums[i + 1] = arr[k];
  13. }
  14. }
  15. free(arr);
  16. }
备用站点 当前处于降级运行的备用站点,仅供应急访问,数据和功能可能不是最新。