zoukankan      html  css  js  c++  java
  • 去重小练习

    页面上有3个输入框:分别为max,min,num;三个按钮:分别为生成,排序,去重;
    在输入框输入三个数字后,先点击生成按钮,生成一个数组长度为num,值为max到min之间的随机整数;点击排序,对当前数组进行排序,点击去重,对当前数组进行去重。
    每次点击之后使结果显示在控制台
     
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    </head>
    <body>
    <input type="text" id="txt1" placeholder="请输入max">
    <input type="text" id="txt2" placeholder="请输入min">
    <input type="text" id="txt3" placeholder="请输入num">
    <input type="button" id="btn1" value="生成">
    <input type="button" id="btn2" value="排序">
    <input type="button" id="btn3" value="去重">
    </body>
    <script>
     

    var oTxt1 = document.getElementById("txt1");
    var oTxt2 = document.getElementById("txt2");
    var oTxt3 = document.getElementById("txt3");
    var oBtn1 = document.getElementById("btn1");
    var oBtn2 = document.getElementById("btn2");
    var oBtn3 = document.getElementById("btn3");

    //把value放入点击事件里面 不然就是NaN
     
    oBtn1.onclick = function fn1(){
    var max = parseInt(oTxt1.value);
    var min = parseInt(oTxt2.value);
    var num = parseInt(oTxt3.value);

    var arr1 = new Array(num);
    for(var i = 0;i < num;i++){
    arr1[i]=random(max,min);
    }
    console.log(arr1);
    //第二个按钮
    oBtn2.onclick = function fn2(){
    // arr1.sort();
    // console.log(arr1);
     
    for(var i = 0;i<arr1.length-1;i++){
    for(var j=0;j<arr1.length-i-1;j++){
    if(arr1[j]>arr1[j+1]){
    var ls = arr1[j];
    arr1[j]=arr1[j+1];
    arr1[j+1]=ls;
    }
    }
    }
    console.log(arr1);
    }
     
    //第三个按钮
    oBtn3.onclick = function fn3(){
    var arr2 = [];
    for(var i = 0;i<arr1.length;i++){
    if(!gry(arr2,arr1[i])){
    arr2.push(arr1[i]);
    }
    }
    console.log(arr2);
    }

    }
    function random(max,min){
    return Math.round( Math.random()*(max-min)+min);
    }
     
    function gry(arr1,n){
    for(var i =0;i<arr1.length;i++){
    if(arr1[i]===n){
    return true;
    }
    }
    return false;
    }

    </script>
    </html>
     
  • 相关阅读:
    Effective C++ 33 避免遮掩继承而来的名称
    求子数组之和的最大值——编程之美 2.14 扩展问题 正确实现
    数据结构快速回顾——平衡二叉树 AVL (转)
    位运算符 优先级 折半搜索
    关于 二维数组指针
    C++中的单例模式(转)
    C# ThreadStart和ParameterizedThreadStart区别
    C# 实现数字字符串左补齐0的两种方法
    C# 窗口自适应窗口宽度和高度
    C# 在多线程环境中,进行安全遍历操作
  • 原文地址:https://www.cnblogs.com/liusaisai/p/11397312.html
Copyright © 2011-2022 走看看