算法学习2

学习目录

一.插入排序

从数组的第一个元素开始,当前元素与其前一个元素进行比较;

大于(或小于时)将其进行交换,即当前元素替换到前一位;

再将该元素与替换后位置的前一个元素进行交换,直到不需要交换(或没有前一个元素)就停止当前循环;

然后到该元素原先位置的下一个元素开始进行新一轮的循环;

cpp 复制代码
int arr = {12, 11, 13, 5, 6};
int i, j, key;
    for (i = 1; i < arr.size(); i++) {
        key = arr[i];
        j = i - 1;

        while (j >= 0 && arr[j] > key) {
            arr[j + 1] = arr[j];
            j = j - 1;
        }
        arr[j + 1] = key;
    }
相关推荐
Errorbot19 分钟前
F570四轴飞行器学习笔记
笔记·学习·无人机
GISer_Jing19 分钟前
AI学习资源总结:免费开放,入门至深入,持续更新
人工智能·学习·设计模式·prompt·aigc
_Kayo_25 分钟前
Node.JS 学习笔记7
笔记·学习·node.js
wuqingshun31415927 分钟前
蓝桥杯 缺页异常2【算法赛】
算法·职场和发展·蓝桥杯
Mh_ithrha33 分钟前
题目:小鱼比可爱(java)
java·开发语言·算法
l1t35 分钟前
数独优化求解C库tdoku-lib的使用
c语言·开发语言·python·算法·数独
默大老板是在下36 分钟前
【个人成长】我和自己的博弈:在“自我约束”中重构人生系统
笔记·学习·重构·生活
有一个好名字36 分钟前
力扣-奇偶链表
算法·leetcode·链表
wxm63137 分钟前
力扣算法题(C++):1、2
java·算法·leetcode
Hello_Embed40 分钟前
RS485 双串口通信 + LCD 实时显示(DMA版)
笔记·学习·操作系统·嵌入式·freertos