JS数组操作中的经典算法
冒泡排序
<script type="text/javascript">
var arr = [3,7,6,2,1,5];
定义一个交换使用的中间变量
var temp = 0;
for(i=0;i<arr.length;i++){
for(j=0;j<arr.length;j++){
如果下一个元素小于当前元素
if(arr[j]>arr[j+1]){
互换
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(var i in arr){
document.write(arr[i]);
}
</script>
数组去重
<script type="text/javascript">
//老数组
var arr1 = [1,2,2,3,8,6,6,4,5,5];
//定义新数组
var arr2 = [];
for(i=0;i<arr1.length;i++){
var status = 0;
for(j=0;j<arr2.length;j++){
if(arr1[i]==arr2[j]){
status = 1;
break;
}
}
if(status == 0){
arr2.push(arr1[i]);
}
}
for(var x in arr2){
document.write(arr2[x]+"<br>");
}
</script>
数组添加去重
<script type="text/javascript">
var arr = [3.14,10,4,"hello"];
新定义数组元素
var tj = "hello";
布尔型判断
var cf = true;
for(var i =0;i<arr.length;i++){
if(tj == arr[i]){
cf = false;
break;
}
}
if(cf){
arr.push(tj);
for(var i in arr){
document.write(arr[i]+"<br>");
}
}
else{
alert("有重复值");
}
</script>
JS数组操作中的经典算法的更多相关文章
- JS的十大经典算法排序
引子 有句话怎么说来着: 雷锋推倒雷峰塔,Java implements JavaScript. 当年,想凭借抱Java大腿火一把而不惜把自己名字给改了的JavaScript(原名LiveScript ...
- JS的十大经典算法
冒泡排序(Bubble Sort) 冒泡排序须知: 作为最简单的排序算法之一,冒泡排序给我的感觉就像Abandon在单词书里出现的感觉一样,每次都在第一页第一位,所以最熟悉...冒泡排序还有一种优化算 ...
- JS 数组去重(数组元素是对象的情况)
js数组去重有经典的 几种方法 但当数组元素是对象时,就不能简单地比较了,需要以某种方式遍历各值再判断是否已出现. 因为: 1.如果是哈希判断法,对象作哈希表的下标,就会自动转换成字符型类型,从而导致 ...
- [经典算法题]寻找数组中第K大的数的方法总结
[经典算法题]寻找数组中第K大的数的方法总结 责任编辑:admin 日期:2012-11-26 字体:[大 中 小] 打印复制链接我要评论 今天看算法分析是,看到一个这样的问题,就是在一堆数据 ...
- JS数组去重的6种算法实现
1.遍历数组法 最简单的去重方法,实现思路:新建一新数组,遍历传入数组,值不在新数组就加入该新数组中:注意点:判断值是否在数组的方法"indexOf"是ECMAScript5 方法 ...
- javascript常用经典算法实例详解
javascript常用经典算法实例详解 这篇文章主要介绍了javascript常用算法,结合实例形式较为详细的分析总结了JavaScript中常见的各种排序算法以及堆.栈.链表等数据结构的相关实现与 ...
- Java中的经典算法之冒泡排序(Bubble Sort)
Java中的经典算法之冒泡排序(Bubble Sort) 神话丿小王子的博客主页 原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面.即在第一 ...
- Java中的经典算法之选择排序(SelectionSort)
Java中的经典算法之选择排序(SelectionSort) 神话丿小王子的博客主页 a) 原理:每一趟从待排序的记录中选出最小的元素,顺序放在已排好序的序列最后,直到全部记录排序完毕.也就是:每一趟 ...
- JAVA经典算法40题及解答
JAVA经典算法40题 [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分 ...
随机推荐
- 【转】JS容器拖拽效果,并通过cookie保存拖拽各容器的所在位置
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- dashDB - Introduction and DB Tools
dashDB - Introduction dashDB is a database that is designed for performance and scale. It offers sea ...
- windows平台python 2.7环境编译安装zbar
最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本上弄明白,分享出来给大家. 一.zbar官方介绍 ZBar 是款桌面电脑用条形码/二维码扫描工具,支持摄像头及图 ...
- openinstall集成小技巧
引言:最近在做一个iOS端的小游戏,想要实现在安装时自动关联好友的功能,就发帖询问有没有好的想法.在帖子中法想了这个不错的SDK,通过它我们还实现了,安装后自动进入好友游戏房间的功能.这里我就分享一下 ...
- 狙杀ES6之开光篇
前言 最近有很多小伙伴在后台留言说,闰土哥,是时候来一波干货了!(机智的你们似乎已经猜到我接下来要说什么了,哈哈-).没错,今天闰土为大家带来了久违的干货文章,而且是一个系列的哦!(文章系列较长,请自 ...
- 简单好用用js就可以保存文本文件到本地
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- Java多线程缓存器简单实现
package com.charles.utils; import java.util.HashMap; import java.util.Map; import java.util.concurre ...
- Linux日志分析ELK环境搭建
场景:ELK作为一个日志收集和检索系统,感觉功能还是相当的强大的. ELK是啥, 其实是是三个组件的缩写, 分别是elasticsearch, logstash, kibana. ELK平台可以用于实 ...
- HDU1027 Ignatius and the Princess II
Problem Description Now our hero finds the door to the BEelzebub feng5166. He opens the door and fin ...
- 显示引擎innodb状态详解
很多人让我来阐述一下 SHOW INNODB STATUS 的输出信息,了解SHOW INNODB STATUS都输出了几个什么信息,并且我们能够这些信息中获取什么资讯,得以提高MySQL性能. 首 ...