直接插入排序算法实例详解 直接插入排序算法实例详解1.复杂度与稳定性最坏情况:O(N^2)最好情况:O(N^2)平均情况:O(N^2) 稳定性:稳定排序2.过程介绍直接插入排序是把新的数据插入以及排序好的数列中,排序的基本方法是:每…… 排序算法 2022年03月26日 125 点赞 0 评论 125622 浏览
堆排序算法C/C++代码图文讲解 堆排序算法C/C++代码图文讲解(1)堆的概念所谓堆,它是一个数组,也能够被看成一个近似的全然二叉树。树上每一个结点相应数组的一个元素。二叉堆分为二种:最大堆和最小堆。本文主要介绍最大堆,最小堆类似。最大堆的特点:对于随意某个结点,…… 排序算法 2022年04月23日 192 点赞 0 评论 96030 浏览
排序算法之冒泡排序代码模板(C/C++/Java/Python多版本) 冒泡算法是一种基础的排序算法,其核心思想是反复交换相邻元素,如同水中的气泡逐渐上浮。它通过多轮遍历,在每一轮中依次比较相邻的两个元素,如果它们的顺序错误(例如前一个比后一个大),就交换它们的位置,这样每一轮遍历都会将当前未排序部分中的最大(或最小)元素“浮”到正确的一端(末端)。这个过程不断重复,直到某一轮遍历中没有发生任何交换,表明序列已经完全有序,其时间复杂度为 O(n²),效率较低。1. C 算法篇 2026年01月25日 0 点赞 0 评论 123 浏览
直接选择排序C/C++代码图文讲解 直接选择排序C/C++代码图文讲解直接选择排序就是遍历整个数组,每遍历一遍的目的是找出该数组中的最大数和最小数对应的下标,然后将最小数和数组的第一个数进行交换,最大数和数组的最后一个数进行交换,然后缩小范围再次遍历。(1)定义直接选择…… 排序算法 2022年03月21日 63 点赞 0 评论 72216 浏览
C++ STL 排序算法std::stable_sort()函数入门 前面我们已经学习了sort()排序,本节我么将继续学习STL库提供的其他排序算法函数模板——stable_sort()。“stable”意为稳定,那么我们这个stable_sort()和之前学习过的排序算法sort()有什么区别呢,”稳定“之处在哪?原来,如果出现相同元素彼此紧邻,比如{1,2,3,3,3,4,5,3},我们其实只需要把最后一个‘3’前移即可,但是sort()奉行极致效率,不会浪费 C++常用算法(一) 2025年10月21日 0 点赞 0 评论 479 浏览
Java选择排序(Selection Sort) Java选择排序(Selection Sort)选择排序(SelectionSort)是一种简单直观的排序算法,其算法原理为首先在未排序的序列中找到最小(大)的元素,存放到排序序列的起始位置,然后再从剩余未排序的元素中继续寻找最小(大)的元素,存放…… Java数组 2022年03月11日 53 点赞 0 评论 90037 浏览
希尔排序算法实例详解 希尔排序算法实例详解1.复杂度与稳定性算法时间复杂度最坏情况:O(n^2)最好情况:O(n)平均情况:O(n^2) 稳定性:不稳定排序2.过程介绍希尔排序,又名递减增量排序算法,是一种非稳定的更高效的插…… 排序算法 2022年03月10日 185 点赞 0 评论 94314 浏览
希尔排序算法C/C++代码图文讲解 希尔排序算法C/C++代码图文讲解希尔排序又称“缩小增量排序”,是插入排序的一种。直接插人排序,当待排序的记录个数较少且待排序序列的关键字基本有序时,效率较高。希尔排序基于以上两点,从“减少记录个数…… 排序算法 2022年03月11日 79 点赞 0 评论 116046 浏览
排序算法之选择排序代码模板(C/C++/Java/Python多版本) 选择排序是一种简单直观的排序算法。它的工作原理是:首先在整个序列中找到最小(或最大)的元素,将其与序列第一个位置的元素进行交换;然后,在剩下的未排序元素中继续寻找最小(或最大)的元素,将其与第二个位置的元素交换;以此类推,不断在剩余的未排序部分中选择最值元素,并放置到已排序部分的末尾,直到所有元素均被处理完毕。整个排序过程如同“不断选择并放置最值”,其时间复杂度为 O(n²),虽然效率不高,但由于 算法篇 2026年01月25日 0 点赞 0 评论 106 浏览
排序算法在日常的应用 排序算法在日常的应用说到排序算法,它是计算机技术中最基本使用率最高的算法,需要非常复杂的算法都会用到排序,所以了解排序算法的思想和原理,对于编写软件非常重要。“工欲善其事必先利其器。”想要利用好排…… 排序算法 2022年04月27日 51 点赞 0 评论 109729 浏览