zoukankan      html  css  js  c++  java
  • 原生js数组去重与排序

    //数组排序 初始化
    var arr = [];
    var arr1 = [];
    var arr2 = [];
    var arr3 = [];
    var arr4 = [];
    for(var i=0 ; i< 20; i++){
    arr.push(Math.floor(Math.random()*10));
    arr1.push(Math.floor(Math.random()*10));
    arr2.push(Math.floor(Math.random()*10));
    arr3.push(Math.floor(Math.random()*10));
    arr4.push(Math.floor(Math.random()*10));
    }


    //数组去重
    console.log('==数组去重==');
    console.log(arr);
    function arrDup(ele){
    for(var i=0; i<ele.length-1; i++){
    for(var j=i+1; j<ele.length; j++){
    if(ele[i] == ele[j]){
    ele.splice(j,1);
    j--;
    }
    }
    }
    return ele;
    }
    console.log(arrDup(arr))

    //选择排序
    console.log('==选择排序==');
    console.log(arr1);
    for(var i=0; i<arr1.length; i++){
    var min = i;
    for(var j=i+1; j<arr1.length; j++){
    if(arr1[min] > arr1[j]){
    min = j;
    }
    }
    if(i != min){
    var temp = arr1[i];
    arr1[i] = arr1[min];
    arr1[min] = temp;
    }
    }
    console.log(arr1);

    //冒泡排序
    console.log('==冒泡排序==');
    console.log(arr2);
    for(var i=0; i<arr2.length-1; i++){
    for(var j=0; j<arr2.length-1-i; j++){
    if(arr2[j] > arr2[j+1]){
    var temp = arr2[j];
    arr2[j] = arr2[j+1];
    arr2[j+1] = temp;
    }
    }
    }
    console.log(arr2);

    //快速排序
    console.log('==快速排序==');
    console.log(arr3);
    function quickSort(arr){
    if(arr.length <=1){
    return arr;
    }
    var centId = Math.floor(arr.length/2);
    var cent = arr.splice(centId,1)[0];
    var left = [];
    var right = [];
    for(var i=0; i<arr.length; i++){
    if(arr[i] > cent){
    right.push(arr[i]);
    }else{
    left.push(arr[i]);
    }
    }
    return quickSort(left).concat(cent,quickSort(right));
    }
    console.log(quickSort(arr3));

    //自带排序方法
    console.log('==自带排序方法==')
    console.log(arr4);
    var sor = arr4.sort(function(a,b){
    return a - b;
    })
    console.log(sor);

    ————————————————
    版权声明:本文为CSDN博主「JackieDYH」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/JackieDYH/article/details/105798626

  • 相关阅读:
    特征方程
    鸽巢原理
    Python列表与字典
    布尔型
    python字符串
    Python小笔记
    IntelliJ 中Maven pom.xml依赖不生效解决
    IDEA创建servlet,篇末有找不到servlet报404的原因
    jQuery的ajax之验证用户名是否被注册
    jquery之Validata表单验证
  • 原文地址:https://www.cnblogs.com/huayang1995/p/15432595.html
Copyright © 2011-2022 走看看