C++ STL 排序算法std::stable_sort()函数入门 前面我们已经学习了sort()排序,本节我么将继续学习STL库提供的其他排序算法函数模板——stable_sort()。“stable”意为稳定,那么我们这个stable_sort()和之前学习过的排序算法sort()有什么区别呢,”稳定“之处在哪?原来, C++常用算法(一) 2025年10月21日 0 点赞 0 评论 1161 浏览
堆排序算法C/C++代码图文讲解 (1)堆的概念所谓堆,它是一个数组,也能够被看成一个近似的全然二叉树。树上每一个结点相应数组的一个元素。二叉堆分为二种:最大堆和最小堆。本文主要介绍最大堆,最小堆类似。最大堆的特点:对于随意某个结点,该结点的值大于左孩子、右孩子的值,可是左右孩子的值没有要求。 排序算法 2022年04月23日 193 点赞 0 评论 96746 浏览
Java快速排序(Quick Sort) 快速排序(QuickSort)是基于二分思想,对冒泡排序的一种改进。主要思想是确立一个基数,将小于基数的数字放到基数的左边,大于基数的数字放到基数的右边,然后再对这两部分数字进一步排序,从而实现对数组的排序。其优点是效率高,时间复杂度平均为O(nlogn), Java数组 2022年04月29日 90 点赞 0 评论 101777 浏览
直接插入排序算法实例详解 1.复杂度与稳定性最坏情况:O(N^2)最好情况:O(N^2)平均情况:O(N^2)稳定性:稳定排序2.过程介绍直接插入排序是把新的数据插入以及排序好的数列中,排序的基本方法是:每一步将一个待排序的元素,按其排序码的大小,插入到前面已经排好序的一组元素的适当位置上去,直到元素全部插入为止。 排序算法 2022年03月26日 127 点赞 0 评论 126567 浏览
Java选择排序(Selection Sort) 选择排序(SelectionSort)是一种简单直观的排序算法,其算法原理为首先在未排序的序列中找到最小(大)的元素,存放到排序序列的起始位置,然后再从剩余未排序的元素中继续寻找最小(大)的元素,存放到已排序序列的末尾,以此类推,直到所有元素均排序完成。 Java数组 2022年03月11日 54 点赞 0 评论 90741 浏览
选择排序算法C/C++代码图文讲解 本篇主要简单介绍选择排序,并且通过图片和代码的形式帮助大家理解应用。(1)什么是选择排序?选择排序(Selectionsort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的中数据元素选出最小(或最大)的一个元素,存放在序列的起始位置, 排序算法 2022年01月14日 127 点赞 0 评论 153108 浏览
C++ STL 排序算法std::partial_sort()函数入门 partial_sort(first,middle,last)排序算法模板函数,”partial“意为”部分“,该排序算法指的是在指定区间[first,last)按排序规则找出前(middle-first)个元素并存放进排序区间[first,middle)中。 C++常用算法(一) 2025年10月21日 0 点赞 0 评论 1141 浏览
Java归并排序(Merge Sort) 归并排序(MergeSort)是建立在归并操作上的一种有效的稳定的排序算法,该算法是采用分治法(DivideandConquer)的一个非常典型的应用。归并排序将两个有序的子序列合并得到一个完全有序的序列,即先使每个子序列有序,再使子序列段间有序。 Java数组 2022年04月26日 234 点赞 0 评论 88439 浏览
希尔排序算法C/C++代码图文讲解 希尔排序又称“缩小增量排序”,是插入排序的一种。直接插人排序,当待排序的记录个数较少且待排序序列的关键字基本有序时,效率较高。希尔排序基于以上两点,从“减少记录个数”和“序列基本有序”两个方面对直接插入排序进行了改进。(1)步骤:1.先选定一个小于N的整数gap作为第一增量, 排序算法 2022年03月11日 80 点赞 0 评论 116747 浏览
希尔排序算法实例详解 1.复杂度与稳定性算法时间复杂度最坏情况:O(n^2)最好情况:O(n)平均情况:O(n^2)稳定性:不稳定排序2.过程介绍希尔排序,又名递减增量排序算法,是一种非稳定的更高效的插入排序,在对几乎已经排好序的数据操作时,效率极高,即可以达到线性排序的效率, 排序算法 2022年03月10日 185 点赞 0 评论 95146 浏览