js冒泡排序,数组去重
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
/***冒泡排序法***/
var arrSort = [20,30,10,40,0];
function sortarr(arr){
for(i=0;i<arr.length-1;i++){//循环3次
for(j=0;j<arr.length-1-i;j++){//第一圈循环三次把最大值放到最后
if(arr[j]>arr[j+1]){//两两比较,最大值放到最后
var temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
return arr;
}
console.log(sortarr(arrSort));
/***数组去重 第一种方法***/
var arrRepeat = [1,1,2,21,3,4,5,5,4];
var arrrepeats = [];//[arrRepeat[0]];
for(var i = 0;i < arrRepeat.length;i++){//原数组
var flag = false;
for(var j=0;j<arrrepeats.length;j++){//去重后的数组
if(arrRepeat[i] == arrrepeats[j]){//每次对比如果有重复跳出进行原数组下一次循环
flag = true;
break;
}
}
if(!flag){
arrrepeats.push(arrRepeat[i]);
}
}
console.log(arrrepeats);
/***数组去重 第二种方法***/
var arrRepeat2 = [1,1,2,2,3,3,4,4,5,5];
var jsonObj = {} , arrresult = [];
for(var i=0;i<arrRepeat2.length;i++){
if(!jsonObj[arrRepeat2[i]]){//判断json中是否已存在该对象,不存在则进入
arrresult.push(arrRepeat2[i]);//加入去重后数组
jsonObj[arrRepeat2[i]] = 1;//放入json对象中 , 下次不再进入
}
}
console.log(arrresult)
</script>
</body>
</html>
js冒泡排序,数组去重的更多相关文章
- js中数组去重的几种方法
js中数组去重的几种方法 1.遍历数组,一一比较,比较到相同的就删除后面的 function unique(arr){ ...
- JS实现数组去重方法大总结
js数组根据对象中的元素去重: var arr2 = [ { name: "name1", num: "1" }, { name: "name2&qu ...
- Js对于数组去重提高效率一些心得
最近在找工作,好几次面试都问过数组去重的问题.虽然问的都不一样,但是核心思想是没有变的. 第一种是比较常规的方法 思路: 构建一个新的数组存放结果 for循环中每次从原数组中取出一个元素,用这个元素循 ...
- js引用类型数组去重-对象标记法
前言 Js数组去重已经有很多种实现方式:包括逐个检索对比(使用Array.property.indexOf),先排序后对比,使用hash表,利用ES6中的Set()等.这些数组去重办法中速度最快的是h ...
- JS实现数组去重方法整理
前言 我们先来看下面的例子,当然来源与网络,地址<删除数组中多个不连续的数组元素的正确姿势> 我们现在将数组中所有的‘ a’ 元素删除: var arr = ['a', 'a', 'b', ...
- js06--利用js给数组去重
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...
- js中数组去重方法及性能对比
js中数组的 数组去重 常用的数组去重方法以及效率分析: 首先我们先构建一个数组,主要是用于进行去重实验,我们主要实验的量级为1000,10000,100000,500000.具体的生成数组的方法如下 ...
- js对数组去重的方法总结-(2019-1)
最近待业在家,系统地学习了一套js的课程.虽然工作时间真的比较长了,但有些东西只局限在知其然而不知其所以然的程度上,有些知识点通过“血和泪”的经验积累下来,也只是记了结果并没有深究,所以每次听完课都有 ...
- js实现数组去重的方式(7种)
JS数组去重的方式 例:将下面数组去除重复元素(以多种数据类型为例) const arr = [1, 2, 2, 'abc', 'abc', true, true, false, false, und ...
- js中数组去重的方法
在实际工作或面试中,我们经常会遇到"数组去重"问题,接下来就是使用js实现的数组去重的多种方法: 1.借助ES6提供的Set结构 var arr = [1,1,2,2,3,3,4, ...
随机推荐
- CSS小技巧-煎蛋的画法~
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- ASP.NET 开发者 开始学习ASP.NET Core 2吧
. NET Core 从2016年6月28日发布,过去了将近一年的时间,但是在工作中发现大家对.net core的接受程度并不高,这只是一个感觉,俗话说“没有调查就没有发言权”, 这两天通过微信小程 ...
- Ionic3新特性--页面懒加载1
Ionic3新的懒加载机制给我带来了如下新特性: 避免在每一个使用到某Page的Module或其他Page中重复的import这个类(需要写一堆路径) 允许我们通过字符串key在任何想使用的地方获取某 ...
- Java对【JSON数据的解析】--官方解析法
要求:解析下面5个JSON数据 1.String string ="{name:'zhangsan',age:18}"; 2.String string2 = "{per ...
- 新手如何快速入门Python
学习任何一门语言都是从入门(1年左右),通过不间断练习达到熟练水准(3到5年),少数人最终能精通语言,成为执牛耳者,他们是金字塔的最顶层.虽然万事开头难,但好的开始是成功的一半,今天这篇文章就来谈谈如 ...
- BUGKUctf-web-writeup
---恢复内容开始--- 找到了个ctf平台.里面的web挺多的.终于将web题目写的差不多了. Web 签到题 加群就可以了 Web2 直接F12就看到了 文件上传测试 Burp抓包 文件名改成 1 ...
- [Leetcode] Binary search--436. Find Right Interval
Given a set of intervals, for each of the interval i, check if there exists an interval j whose st ...
- css3动画小案例
今天与大家来分享一下我做的css3动画案例. 在展示我的案例之前先给大家说说实现这个案例所需要的一些属性. transform 属性允许我们对元素进行旋转.缩放.移动或倾斜. 通过 CSS3 2D转换 ...
- POJ 1459-Power Network(网络流-最大流-ISAP)C++
Power Network 时间限制: 1 Sec 内存限制: 128 MB 题目描述 A power network consists of nodes (power stations, cons ...
- 用超链接a来提交form表单
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...