数组去重
思路:
1、创建一个新的数组来不重复储存a中的元素
2、设置一个信号量,每次查找之前为0,如果找到了置为1
3、在循环结束后判断信号量,为0的话没找到,可以加入,为1的话不对b做操作
4、将信号量置为0重新开始下一轮查找
5、打印b数组
function sort() {
var a = [0, 4, 1, 1, 7, 7, 2]; //创建一个数组a,有1,7重复
console.log(a); //打印a
var b = []; //创建一个新的数组b
var flag = 0; //设置信号量
for (let i = 0; i < a.length; i++) {
flag = 0; //信号量重置为0
for (let k = 0; k < b.length; k++) { //在数组b中查找是否有重复元素
if (a[i] == b[k]) { //找到重复元素
flag = 1; //设置信号量为1
break; //跳出循环
}
}
if (flag == 0) { //如果信号量没有变,仍然为0,那么证明没有找到
b.push(a[i]); //将a[i]添加到b数组中
}
}
console.log(b); //打印b数组
}
sort(); //调用方法
运行如下:

本文介绍了使用信号量实现JavaScript数组去重的方法。通过创建一个新的数组b,遍历原数组a,利用内部循环检查每个元素是否已存在于b中。若不存在,则将其添加到b中,确保最终b数组中的元素不重复。这种方法简洁且有效地解决了数组去重问题。
1387

被折叠的 条评论
为什么被折叠?



