<!DOCTYPE html>
<html>
<head>
<!-- 页面上有3个输入框:分别为max,min,num;三个按钮:分别为生成,排序,去重;
在输入框输入三个数字后,先点击生成按钮,生成一个数组长度为num,值为max到min
之间的随机整数;点击排序,对当前数组进行排序,点击去重,对当前数组进行去重。
每次点击之后使结果显示在控制台
-->
<meta charset="utf-8">
<title>生成、排序、去重</title>
</head>
<body>
    <!-- 创建三个输入框和三个按钮 -->    
<input type="text" id="max" />
<input type="text" id="min" />
<input type="text" id="num" />
<input type="button" id="btn" value="生成" />
<input type="button" id="btn1" value="排序" />
<input type="button" id="btn2" value="去重" />
</body>
<script type="text/javascript"> //先对输入框声明变量
var oMax=document.getElementById("max")
var oMin=document.getElementById("min")
var oNum=document.getElementById("num")
var oBtn=document.getElementById("btn")
var oBtn1=document.getElementById("btn1")
var oBtn2=document.getElementById("btn2") var arr=[];
// 生成一个数组长度为num,值为max到min之间的随机整数
oBtn.onclick =function(){ for(var d=0;d<oNum.value;d++){
arr[d]=random(oMax.value,oMin.value)
}
//范围随机函数的封装
function random(max,min){
return Math.round(Math.random()*(max-min)+min)
}
console.log(arr)
} //排序
//数组的排序最重要的一点就是遍历,此处数组的冒泡排序
oBtn1.onclick = function(){
for (var i=0;i<arr.length-1;i++) {
for (var j=0;j<arr.length-i-1;j++) {
var sum;
if (arr[j]>arr[j+1]) {
sum=arr[j+1];
arr[j+1]=arr[j];
arr[j]=sum;
}
}
}
console.log(arr)
} // 去重
oBtn2.onclick = function(){
for (var a = 0;a<arr.length;a++) {
for (var e=a+1;e<arr.length;e++) {
if(arr[a]==arr[e]){
arr.splice(e,1);
e--;
}
}
}
console.log(arr);
} </script>
</html>

页面上有3个输入框:分别为max,min,num;三个按钮:分别为生成,排序,去重;在输入框输入三个数字后,先点击生成按钮,生成一个数组长度为num,值为max到min之间的随机整数点击排序,对当前数组进行排序,点击去重,对当前数组进行去重。 每次点击之后使结果显示在控制台的更多相关文章

  1. bit-map牛刀小试:数组test[X]的值所有在区间[1, 8000]中, 现要输出test中反复的数。要求:1. 不能改变原数组; 2.时间复杂度为O(X);3.除test外空间不超过1KB

    先来看看这个题目:数组test[X]的值所有在区间[1, 8000]中. 现要输出test中反复的数.要求:1. 不能改变原数组; 2.时间复杂度为O(X);3.除test外空间不超过1KB. 好, ...

  2. 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从

    明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的 ...

  3. js input框输入1位数字后自动跳到下一个input框聚焦

    // input框输入1位数字后自动跳到下一个input聚焦 function goNextInput(el){ var txts = document.querySelectorAll(el); f ...

  4. 要生成在[min,max]之间的随机整数,

    import java.util.Random; public class RandomTest { public static void main(String[] args) { int max= ...

  5. PHP检测数组中的每个值是否含有特殊字符

    本文出至:新太潮流网络博客 /** * [TestArray 检测数组是一维还是二维] * @E-mial wuliqiang_aa@163.com * @TIME 2017-04-07 * @WEB ...

  6. 【WPF学习笔记】之如何把数据库里的值读取出来然后显示在页面上:动画系列之(六)(评论处有学习资料及源码)

    (应博友们的需要,在文章评论处有源码链接地址,以及WPF学习资料.工具等,希望对大家有所帮助) ...... 承接系列五 上一节讲了,已经把数据保存到数据库并且删除数据,本讲是把已经存在的数据从数据库 ...

  7. 剑指offer24:二叉树中和为输入整数值的所有路径。(注意: 在返回值的list中,数组长度大的数组靠前)

    1 题目描述 输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.(注意: 在返回值的list中,数组长 ...

  8. 计算一个数组里的重复值并且删去(java)

    主要思想: 数组可以无序 假设数字里的值都为正 循环判断数组 如果与前面的数字相同则变为-1 然后记录-1的个数算出重复值 然后重新new一个减去重复值长度的新数组 和原数组判断 不为-1的全部复制进 ...

  9. 从数据库提取数据通过jstl显示在jsp页面上

    从数据库提取数据通过jstl显示在jsp页面上 1.ConnectDB.java连接数据库,把数据转换成list public class ConnectDB { private final stat ...

随机推荐

  1. 关于char(M)和varchar(N)的区别

    1.int(10)的10表示显示的数据的长度,不是存储数据的大小:chart(10)和varchar(10)的10表示存储数据的大小,即表示存储多少个字符. int(10) 10位的数据长度 9999 ...

  2. 去BAT面试完的Mysql面试题总结(55道,带完整答案)

    1.一张表里面有ID自增主键,当insert了17条记录之后,删除了第15,16,17条记录,再把mysql重启,再insert一条记录,这条记录的ID是18还是15 ? 2.mysql的技术特点是什 ...

  3. python之路——操作系统的发展史

    阅读目录 手工操作 —— 穿孔卡片 批处理 —— 磁带存储和批处理系统 多道程序系统 分时系统 实时系统 通用操作系统 操作系统的进一步发展 操作系统的作用 手工操作 —— 穿孔卡片 1946年第一台 ...

  4. typescript 类型映射 (ReadOnly、Partial)

    有时候需要一个类型,是依赖于上一个类型但是,对属性的要求去不同 interface Person{ name: string; agent: number; } type Person2 = Read ...

  5. psql 命令

    (1)使用命令行连接数据库 psql -U postgres -h localhost -p 5433 (2)列出所有的数据库 \l -- 查看所有数据库 (3)进入某个数据库 \c name -- ...

  6. c# DataTable第二行改为各列标题字段

    DataTable dt = ExcelHelper.ToDataTable(fileinfo.FilePath); //将datatable的第二行变为列标题字段 DataTable dt2 = n ...

  7. Apache Shiro反序列化远程代码执行

    一.漏洞利用 wget https://raw.githubusercontent.com/sv3nbeast/ShiroScan/master/moule/ysoserial.jar 反弹shell ...

  8. strxfrm - 转换字符串

    总览 (SYNOPSIS) #include <string.h> size_t strxfrm(char *dest, const char *src, size_t n); 描述 (D ...

  9. KiCAD原理图更换库

    KiCAD原理图库更换 将AD的工程文件转换位KiCAD后,打开原理图,系统会自动压缩生成当前工程库,但是这样将原理图复制粘贴到其他地方时,就找不到库了,原理图就会无法显示器件符号,如何将库替换为我们 ...

  10. 前端学习(七)less(笔记)

    less---处理器:koala_2.0.4_portable 属于css预处理语言,可以让你的css语言更有逻辑性! 编译css的! 准备工作:    1.项目:        js         ...