算法学习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;
    }
相关推荐
siy233317 分钟前
[c语言日记] 数组的一种死法和两种用法
c语言·开发语言·笔记·学习·链表
AI 嗯啦32 分钟前
数据结构深度解析:二叉树的基本原理
数据结构·算法
和光同尘@1 小时前
66. 加一 (编程基础0到1)(Leetcode)
数据结构·人工智能·算法·leetcode·职场和发展
CHEN5_021 小时前
leetcode-hot100 11.盛水最多容器
java·算法·leetcode
songx_991 小时前
leetcode18(无重复字符的最长子串)
java·算法·leetcode
max5006002 小时前
实时多模态电力交易决策系统:设计与实现
图像处理·人工智能·深度学习·算法·音视频
在路上`2 小时前
前端学习之后端java小白(三)-sql外键约束一对多
java·前端·学习
其古寺2 小时前
贪心算法与动态规划:数学原理、实现与优化
算法·贪心算法·动态规划
尚久龙3 小时前
安卓学习 之 用户登录界面的简单实现
android·运维·服务器·学习·手机·android studio·安卓
yb0os13 小时前
RPC实战和核心原理学习(一)----基础
java·开发语言·网络·数据结构·学习·计算机·rpc