大纲
- 数组去重
1.1 indexOf
1.2 hash表
1.3 冒泡排序
1.4 递归函数
1.5 快速排序
1.数组去重
数组去重:从数组中找到相同的元素,并将相同的元素删除。保证数组中的每个元素都是独一无二的操作。
1.1 indexOf数组去重
基本思想:利用数组的indexOf方法,目的是寻找存入参数在数组中第一次出现的位置。
缺点:实现这个方法的时候会遍历数组直到找到目标为止,消耗掉很多时间。
var arr = [1, 2, 3, 4, 5, 1, 1, 3, 3, 4];
var finalArr = [];
for (var i = 0; i < arr.length; i++) {
if (finalArr.indexOf(arr[i]) == -1) {
finalArr.push(arr[i]);
}
}
console.log(finalArr);
1.2 hash表数组去重
基本思想:将已经出现过的元素当做属性名,存入一个object内,下标的引用要比用indexOf搜索数组快得多。
缺点:内存占用很多,以牺牲空间来换取时间。
var arr =