zoukankan      html  css  js  c++  java
  • 将一个节点集合以最少的步骤转换为另一个节点集合

    在avalon中,遇到一个问题,如果我们对一个数组进行排序,无论是按某一规则排序还是乱序,我们都要对对应的DOM区域进行排序。典型的是grid中的TR排序与LI元素的排序。

    var old = [0, 1, 2, 4, 5, 6, 7, 8], neo = mess(old.concat())
    var n = neo.length;
    
    function mess(arr) {
        var _floor = Math.floor, _random = Math.random,
                len = arr.length, i, j, arri,
                n = _floor(len / 2) + 1;
        while (n--) {
            i = _floor(_random() * len);
            j = _floor(_random() * len);
            if (i !== j) {
                arri = arr[i];
                arr[i] = arr[j];
                arr[j] = arri;
            }
        }
        return arr;
    }
    console.log("old " + old);
    console.log("neo " + neo)
    for (var i = 0; i < n; i++) {
        var a = old[i], b = neo[i];
        if (a !== b) {
            old.splice(i, 1);//这里相当于removeChild
            old.push(a);//这里相当于appendChild
            console.log(old);
            i = i - 1
        }
    
    }
    console.log("---" + old + "----")
    
    机器瞎学/数据掩埋/模式混淆/人工智障/深度遗忘/神经掉线/计算机幻觉/专注单身二十五年
  • 相关阅读:
    PLL详解
    CSI-2 协议
    C语言volatile关键字的用法
    联合体(union)的使用方法及其本质
    Linux驱动之LED驱动编写
    insmod 和第一个驱动
    黑电平校正BLC
    什么是HDR?
    使用starUML画顺序图
    UML 资料整理
  • 原文地址:https://www.cnblogs.com/rubylouvre/p/3133276.html
Copyright © 2011-2022 走看看