美文网首页
洗牌算法的应用——拼图游戏

洗牌算法的应用——拼图游戏

作者: 小马哒哒001 | 来源:发表于2020-09-18 16:05 被阅读0次

[github源码地址] (https://github.com/mahuanh/algorithmpro)

123.gif

核心代码

bitmap分割

    /**
     * bitmap分割
     */
    public void bitmapCut(Bitmap bitmap) {
        int bitmapW = bitmap.getWidth();
        int bitmapH = bitmap.getHeight();
        int pieceWidth = bitmapW / 4;
        int pieceHeight = bitmapH / 4;
        imgLists.clear();
        int count = 0;
        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < 4; j++) {
                Bitmap imgBitmap = Bitmap.createBitmap(bitmap, j * pieceWidth, i * pieceHeight,
                        pieceWidth, pieceHeight);
                imgLists.add(new ImageBean(imgBitmap, false, count));
                count++;
            }
        }
    }

洗牌算法

    /**
     * 洗牌  打乱图片list
     *
     * @param imgLists
     */
    public void shuffleList(List<ImageBean> imgLists) {
        for (int i = 0; i < imgLists.size(); i++) {
            //生成随机下标  //更改随机下标的取值范围 例:0 ~ n-i
            int randomIndex = (int) (Math.random() * (imgLists.size() - i));
            //方法1:生成的随机下标对应的对象和最后一个未确定的对象 交换
            ImageBean temp = imgLists.get(imgLists.size() - 1 - i);
            imgLists.set(imgLists.size() - 1 - i, imgLists.get(randomIndex));
            imgLists.set(randomIndex, temp);
            
            //方法2:把生成的随机下标对应的对象放到队尾
            //imgLists.add(imgLists.remove(randomIndex));
        }
    }

相关文章

  • 洗牌算法的应用——拼图游戏

    [github源码地址] (https://github.com/mahuanh/algorithmpro) 核心...

  • Golang洗牌算法,抢红包算法

    本文为转载,原文:Golang洗牌算法,抢红包算法 1. 洗牌算法 洗牌算法,即将原来的顺序打乱,组成新的随机排序...

  • 拼图游戏和它的AI算法

    写了个拼图游戏,探讨一下相关的AI算法。拼图游戏的复原问题也叫做N数码问题。 拼图游戏 N数码问题 广度优先搜索 ...

  • 洗牌算法

    音乐软件中的随机播放算法是怎样实现的? 洗牌算法(Shuffle) 生成一个随机数(Random) 这里给出洗牌算...

  • 洗牌算法

    一次偶然的机会,需要我生成一个长度为len的数组。数组的内容是[0-len)。这并不难,分分钟生成这样一个数组: ...

  • 洗牌算法

    在工作中需要重写一个洗牌算法,根据网络中的资料分析了一下,已经有总结得很好的了,就直接总结转载了一下。 洗牌算法大...

  • 洗牌算法

    洗牌算法是一个比较形象的术语,本质上让一个数组内的元素随机排列。

  • 洗牌算法

    问题 实现一个最简单的洗牌算法。 分析 很多人第一次都可能会很迷惑,其实只要理解好了这个题目,实现起来相信并不难。...

  • 洗牌算法

    概述### 洗牌算法(可以归类到随即算法中),顾名思义,就是只利用一次循环等概率的取到不同的元素(牌)。 描述##...

  • 洗牌算法

    打乱一个序列 暴力方法 每次生成一个随机数,然后将对应下标的原序列数添加到新数组中。同时应该有一个memo用来记录...

网友评论

      本文标题:洗牌算法的应用——拼图游戏

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