【前端教程03】for循环冒泡排序、去重、查找重复元素
// 升序
const bubbleSort = (arr) => {
for (let i = 0; i < arr.length; i++) {
for (let j = 0; j < arr.length - i; j++) {
if (arr[j] > arr[j + 1]) {
let tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
return arr;
}
const a = [1,3,77,22,55,12,3,55,3,12,12]
const b1 = bubbleSort(a)
console.log(b1,'升序')
// 降序
const downFun = (arr) => {
for (let i = 0; i<arr.length; i++) {
console.log(i)
for (let j = 0; j<arr.length - i; j++) {
if(arr[j] < arr[j+1]){
const before = arr[j+1];
arr[j+1] = arr[j]
arr[j] = before
}
}
}
return arr
}
const b = downFun(a)
console.log(b,'降序')
// 求和
const sum = (num) => {
let val = 0
for (let i =0; i<=num; i++) {
val += i
}
return val
}
const c = sum(1000)
console.log(c,'求和')
// 去重
const setArr = (arr) => {
let arrNew = []
for (let i = 0; i<arr.length; i++) {
console.log(i)
if(!arrNew.includes(arr[i])){
arrNew.push(arr[i])
}
}
return arrNew
}
const d = setArr(a)
console.log(d,'去重')
// 获取数组中哪些元素有重复
const setArr2 = (arr) => {
let arrNew = []
let arrNew2 = []
let obj = {}
for (let i = 0; i<arr.length; i++) {
console.log(i)
if(!arrNew.includes(arr[i])){
arrNew.push(arr[i])
} else {
if(!arrNew2.includes(arr[i])){
arrNew2.push(arr[i])
}
}
}
return arrNew2
}
const e = setArr2(a)
console.log(e,'获取数组中哪些元素有重复')
本文来自博客园,作者:JeckHui;
个人主页:前端实用站点推荐; 热榜资讯早读:热榜资讯-导航;
转载请注明原文链接:https://www.cnblogs.com/xiaohuizhang/p/17517095.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2022-06-30 【vue开发】富文本编辑器vue-ueditor-wrap
2020-06-30 【vue创建项目】创建一个ts项目包含sass