算法学习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;
    }
相关推荐
冬夜戏雪21 分钟前
实习面经摘录(九)
学习
arvin_xiaoting25 分钟前
OpenClaw学习总结_I_核心架构_8:SessionPruning详解
前端·chrome·学习·系统架构·ai agent·openclaw·sessionpruning
前端摸鱼匠2 小时前
【AI大模型春招面试题11】什么是模型的“涌现能力”(Emergent Ability)?出现条件是什么?
人工智能·算法·ai·自然语言处理·面试·职场和发展
MORE_772 小时前
leecode-合并区间-贪心算法
算法·贪心算法
2401_873204652 小时前
分布式系统安全通信
开发语言·c++·算法
妄汐霜3 小时前
小白学习笔记(spring框架的aop和tx)
笔记·学习
sw1213893 小时前
C++中的代理模式实战
开发语言·c++·算法
ballball~~4 小时前
ISP-CCM(Color Correction Matrix)
图像处理·数码相机·算法
Sunshine for you4 小时前
实时操作系统中的C++
开发语言·c++·算法
中科院提名者4 小时前
BPE 算法的硬核拆解——理解词表(Vocabulary)是如何从零训练出来的,以及字符串是如何被切碎的
算法