版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30856231/article/details/82181370
找出数组中重复的数,并按重复数排序
var arr = [1, 3, 5, 2, 4, 1, 1, 1, 2];
var newarrs = [];
var newarrel = [];
for (let i = 0; i < arr.length; i++) {
for (let j = 0; j < i; j++) {
if (arr[i] == arr[j]) { // 找出数组中重复的数字,新建两个数组,一个放数字,一个放对象信息
if (newarrs.indexOf(arr[i]) == -1) {
newarrs.push(arr[i]);
var obj = {};
obj.str = arr[i];
obj.num = 1;
newarrel.push(obj);
}
}
}
}
console.log(newarrs)
console.log(newarrel)
var num11 = 0;
for (var x = 0; x < newarrs.length; x++) {
for (let i = 0; i < arr.length; i++) {
if (newarrs[x] == arr[i]) {
num11++;
}
}
newarrel[x].num = num11;
num11 = 0;
}
console.log(newarrel)
// newarrel 为重复数。再冒泡排序处理
- 结果:
[1,2]
[{str: 1, num: 4}
,{str: 2, num: 2}]
去除数组中重复的数
var arr = [1, 3, 5, 2, 4, 1, 2];
console.log(arr);
var repeatarr = findRepeat(arr);
var newArr = clearRepeat(arr);
console.log('去掉重复数字之后 =》' + newArr);
console.log('重复数字 =》' + repeatarr);
function clearRepeat(arr) {
var arr2 = [];
for (var i = 0; i < arr.length; i++) {
if (arr2.indexOf(arr[i]) == -1) {
arr2.push(arr[i]);
}
}
return arr2;
}
// 找出重复的数
function findRepeat(arr) {
var repeatarr = [];
for (var i = 0; i < arr.length; i++) {
for (var j = 0; j < i; j++) {
if (arr[i] == arr[j]) {
repeatarr.push(arr[i]);
}
}
}
return repeatarr;
}
- 结果:
[1, 3, 5, 2, 4, 1, 2]
去掉重复数字之后 =》1,3,5,2,4
重复数字 =》1,2
冒泡排序
var arr = [1, 3, 5, 2, 4];
var newArr = arrSort(arr);
console.log(newArr);
function arrSort(arr) {
for(var i = 0;i<arr.length;i++){
for(var j=0;j<arr.length;j++){
var arrEl;
if(arr[j]<arr[j+1]){
arrEl = arr[j+1];
arr[j+1] = arr[j];
arr[j] = arrEl;
}
}
}
return arr;
}
- 结果:
[5, 4, 3, 2, 1]