wiggle sort Given a list of integers, sort them so the output is s1 <= s2 >=s3 <=s4 ... sN.

来源:互联网 发布:淘宝考试不在延迟发货 编辑:程序博客网 时间:2024/06/06 02:23

每个元素和后一个元素比较看是不是希望的次序,如果不是的话互换就好

public void wiggle_sort(int[] arr) {      int n = arr.length;      if(n <= 1) return;      boolean inc = true;      int prev = arr[0];      for(int i=1; i<n; i++) {          if((inc && prev <= arr[i]) || (!inc && prev >= arr[i])) {              arr[i-1] = prev;              prev = arr[i];          } else {              arr[i-1] = arr[i];          }          inc = !inc;      }  } 
0 0
原创粉丝点击