冒泡排序、插入排序和选择排序

冒泡排序

冒泡排序:从序列的第一个元素开始,比较相邻的两个元素,如果满足条件,则交换它们的位置。继续比较下一对相邻元素,执行相同的操作,直到序列的末尾。

bash 复制代码
for(let i=0;i<arr.length;i++){
   for(let j=0;j<arr.length-1-i;i++){
     if(arr[j] >arr[j+1]){
        let temp = arr[i]
        arr[j]= arr[j+1]
        arr[j+1]=temp
     }
   }
}

插入排序

插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法 。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表进行待插入位置查找,并进行移动 。

概念看不明白的可以看 https://www.cnblogs.com/qingergege/p/7406622.html,这位博主有画参考图。

bash 复制代码
for(let i=0;i<arr.length;i++){
  int j=i;
  while(j>0){
    if(arr[j] < arr[j-1]){
      let temp = arr[j]
      arr[j] = arr[j-1]
      arr[j-1] = temp
      j--;
    }else{
      break;
    }
  }
}

选择排序

选择排序:通过遍历数组,选出该数组中较大的或者较小的,放在数组的起始位置,当遍历完整个数组时排序完成。

bash 复制代码
for(let i=0;i<arr.length;i++){
   let minIndex = i
   for(let j=i+1;j<arr.length;j++){
     if(arr[j] < arr[minIndex]){
        minIndex = j
     }
   }
   let temp = arr[i]
   arr[i] = arr[minIndex]
   arr[minIndex] = temp
}
相关推荐
高洁0128 分钟前
工信部教考中心证书-人工智能系列本系列
人工智能·python·深度学习·算法
陈王卜44 分钟前
Reduce 算子优化笔记
算法
wabs6661 小时前
关于图论【最短路径之Bellman_ford 算法(判断负权回路)|卡码网95.城市间货物运输II的思考】
数据结构·算法·图论·bellman_ford算法·卡码网·判断负权回路
YouonlyliveonceC1 小时前
《大话数据结构》第4章实战:中缀表达式转后缀 + 后缀表达式求值(完整可运行实现)
算法
phoenix@Capricornus1 小时前
从统计决策到贝叶斯估计
人工智能·算法·机器学习
AICDragon1 小时前
1.8%就够了:K3的896个MoE专家,为什么激活率这么低反而是好事?
人工智能·算法
VALENIAN瓦伦尼安教学设备2 小时前
ASHOOTER激光对中仪如何通过颜色确定调整是否合适
数据库·嵌入式硬件·算法
货拉拉技术2 小时前
重塑 Agent 度量衡:基于 LLM-as-a-Judge 的离线评估体系与实践
算法·设计模式
车压2 小时前
从“为什么”理解注意力机制
算法
wabs6662 小时前
关于哈希表【力扣15.三数之和的思考】
数据结构·算法·leetcode·散列表·哈希表·三数之和