【无标题】

插入排序

效率高

时间复杂度是n^2.(两个for 循环)。

bash 复制代码
// arr,需要排序的数列
// len,数列的个数
void insert_order(int *arr, int len)
{
    int i, j, k;
    // i指向待插入元素的下标
    for (i = 1; i < len; i++)
    {
        // k存放待插元素本身
        k = arr[i];
        j = i - 1;  //有序序列的最后一个元素
        while (j >= 0 && arr[j] > k)
        {
            arr[j + 1] = arr[j];
            j--;
        }
        arr[j + 1] = k;
    }
}

快排排序:

bash 复制代码
void quick_sort(int *arr, int left, int right)
{
    int i, j, k;
    i = left;
    j = right;
    k = arr[i];    //假象的中间值。
    while (i < j)  // i == j
    {
        while (k <= arr[j] && i < j) j--;
        if (i < j)
            arr[i] = arr[j];
        while (k >= arr[i] && i < j) i++;
        if (i < j)
            arr[j] = arr[i];
    }
    arr[i] = k;
    if (left < i - 1)
        quick_sort(arr, left, i - 1);
    if (right > i + 1)
        quick_sort(arr, i + 1, right);
}

排序种类

哈希表:

相关推荐
tankeven16 小时前
HJ156 走迷宫
c++·算法
旺仔.29116 小时前
STL排序算法详解
数据结构·算法·排序算法
美狐美颜sdk16 小时前
美颜SDK是什么?直播/短视频美颜SDK技术详解
人工智能·算法·美颜sdk·直播美颜sdk·美颜api
华农DrLai17 小时前
什么是远程监督?怎么自动生成训练数据?
人工智能·算法·llm·prompt·知识图谱
计算机安禾17 小时前
【数据结构与算法】第16篇:串(String)的定长顺序存储与朴素模式匹配
c语言·数据结构·c++·学习·算法·visual studio code·visual studio
AI科技星17 小时前
基于v≡c公设的理论优化方案
c语言·开发语言·算法·机器学习·数据挖掘
江不清丶17 小时前
垃圾收集算法深度解析:从标记-清除到分代收集的演进之路
java·jvm·算法
wanderist.17 小时前
从Nim游戏到SG函数
c++·算法·蓝桥杯
数据皮皮侠18 小时前
2285 上市公司组织衰退程度【Dec】2010-2024
大数据·人工智能·算法·制造
daxi15018 小时前
C语言从入门到进阶——第17讲:字符串函数
c语言·开发语言·算法·蓝桥杯