ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Fisher-Yates乱序算法

Fisher-Yates乱序算法

乱序算法

public class Test07 {public static void main(String[] args) {//乱序算法int[] arr = {1,2,3,4,5,6,7,8};//逆序遍历 且这个随机的下标不能使要交换的元素的本身for(int i = arr.length-1;i>0;i--){//产生一个随机的下标与当前元素进行交换int index = (int)(Math.random()*i);arr[i] = arr[i] ^ arr[index];arr[index] = arr[i] ^ arr[index];arr[i] = arr[i] ^ arr[index];}System.out.println(Arrays.toString(arr));}
}

结果(随机):

 

返回列表