利用哈希表实现数组的去重以及利用delete批量删除数组元素
2013-09-04 00:00
344 查看
实现一个array_diff函数,找出2个或多个数组中唯一存在的数字,组成新的数组。
//找出多个数组中唯一存在的数字,组成新的数组 function array_diff() { var hash = {}, arr = [], midArray = [], result = []; for (i in arguments) { arr = arr.concat(arguments[i]); } for (i in arr) { if (isNaN(hash[arr[i]]) && arr[i] <= "9" && arr[i] >= "0") { midArray.push(arr[i]); hash[arr[i]] = midArray.length - 1; } else if (arr[i] <= "9" && arr[i] >= "0") { delete midArray[hash[arr[i]]]; } } for (i in midArray) { result.push(midArray[i]); } return result; } //测试array_diff函数 var a = [1, 2, 3, "a"]; var b = [2, 3, 4, "b"]; var c = [3, 4, 5, "d"]; alert("["+array_diff(a, b, c)+"]") //输出[1,5]
相关文章推荐
- javascript数组元素的添加、删除与插入以及参数数组的使用
- javascript数组元素的添加、删除与插入以及参数数组的使用
- HDU2473 - Junk-Mail Filter 利用虚拟数组实现删除并查集的节点
- 约瑟夫问题 算法很简单保证每个人都能看懂用的是模拟现实 用数组实现 利用循环删除数组中的元素
- PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
- 树的基本结构,以及利用链表实现树的各项操作(创建、添加/删除/打印树节点、销毁等等)
- 利用数组和链表实现简单的哈希表
- 数组元素删除以及数组去重
- 知识储备:02数组与字符串:利用哈希表实现动态规划
- PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
- javascript数组元素的添加、删除与插入以及参数数组的使用
- 创建一个数组, 实现数组初始化、数组清空以及数组元素的逆置
- javascript数组元素的添加、删除与插入以及参数数组的使用
- Java数组,去掉重复值、增加、删除数组元素的实现方法
- 创建一个数组, 实现数组初始化、数组清空以及数组元素的逆置
- javascript数组元素的添加、删除与插入以及参数数组的使用
- javascript数组元素的添加、删除与插入以及参数数组的使用
- 数据存储——Java数组,去掉重复值、增加、删除数组元素的实现方法
- C++利用函数调用实现数组数据的输入输出
- 利用哈希表实现实体类索引