美文网首页
集合乱序方法

集合乱序方法

作者: Joker阳光 | 来源:发表于2017-12-06 13:03 被阅读0次

这是转的,在别的地方看到的,记录下来~

排序的算法有很多,也有很多公认的方法,冒泡、插排、快排。乱序的算法一直没有什么公认的好方法。自己尝试做了一些,觉得这个方法还比较不错,在这里把东西备份一下,以免以后忘记了,找不到了。如果有朋友有更好的算法,请您赐教。

假设现在有一个集合,里面有10个元素,需要做乱序。

我的做法是,每次随机产生一个集合索引范围内的随机数,从集合中把这个元素移除,然后把这个元素放到集合的头部或者尾部,当然只做一次,没有很好的效果,集合有多少元素,就做多少次,或者更多,但是更多次好像意义不是很大,循环次数基本与集合中元素个数相同就差不多了。

具体代码,只需要一个方法,如下:

public class RandomNumber {
    public static List<Integer> getRandom(int size) {
        List<Integer> temp = new LinkedList<Integer>();
        for (int i = 0; i < size; i++) {
            temp.add(i);
        }
        for (int i = size; i > 0; i--) {
            int ran = (int) (Math.random() * i);
            int randomValue = temp.remove(ran);
            temp.add(size - 1, randomValue);
        }
        return temp;
    }
}

相关文章

  • 集合乱序方法

    这是转的,在别的地方看到的,记录下来~ 排序的算法有很多,也有很多公认的方法,冒泡、插排、快排。乱序的算法一直没有...

  • vue动画分享

    动画属性 星光闪烁,涟漪效果 乱序 HTML部分 数据 方法 样式

  • Python:random.shuffle()最好用的乱序函数!

    对一个可迭代对象/容器的乱序方法有非常多,各个模块中都有相应的乱序函数。但是我首推random.shuffle()...

  • redis set学习笔记

    set是string类型元素的集合 成员唯一,意味着没有重复值【去重的list】 无序,排列是乱序的,与插入顺序无...

  • 12.20 雅思听力

    多选 特征 信息量大 干扰信息多 题干限制条件多 录音乱序出现 解题方法单选方法回顾:image.png 重点:搭...

  • 最近只有图片

    乱序

  • 算法题目4:数组打乱顺序

    (一)Fisher–Yates shuffle 洗牌算法是最完美乱序的算法/方法之一. (二) sort这不是真正...

  • 拖延症的2018

    乱序结束

  • 冒泡排序

    冒泡排序是一种方法,怎么解释呢,就是将一个乱序的数组进行升序排序。 }

  • element-ui table 行拖拽

    引入sortable包 使用 初始化 排序方法 注意: table 需要指定row-key,否则会乱序。这也是后端...

网友评论

      本文标题:集合乱序方法

      本文链接:https://www.haomeiwen.com/subject/ggbkixtx.html