
排序
小池111
这个作者很懒,什么都没留下…
展开
-
C++选择排序之直接选择排序、堆排序
直接选择排序 基本思想:不断从待排序的数据中选择数值小的(或大的)数据,依次排入到已排好序的序列后面。 算法: 设 r [1,2,…n]; 1.第一趟扫描选出n个数据中最小的元素,并与 r [1]交换位置; 2. 第二趟扫描余下的 n-1 个数据中最小的,并与 r [2]交换位置; 3. 以此类推,直到第 n-1 趟扫描结束,所有数据有序为止。 for(int i=0;i<n;i++) ...原创 2020-02-25 14:53:31 · 146 阅读 · 0 评论 -
C++插入排序之直接插入排序、希尔排序
直接插入排序 基本思想:从第一个元素开始,取出下一个元素与前一个元素比 较,确定它插入的位置,并将它插入到子序列中。 算法: 从第二个元素到最后一个元素,依次将数组和前面子序中的数组进行比较,确定元素插入的位置; 将元素插入,并将子序中元素个数+1,直到所有元素都插入完为止。 for(int i=0;i<n-1;i++){//重点:i<n-1,最后一个往里插 ...原创 2020-02-17 23:56:07 · 145 阅读 · 0 评论 -
C++交换排序之冒泡排序、快速排序
交换排序基本思想:将大值向一端移动,小值向一段移动。 #冒泡排序 基本思想:从头到尾依次对两个相邻的值进行比较,若为“逆序”则交换两 个的值。将序列按照此方法从头到尾处理一遍。 算法: 第 i 个值与第 i+1 个值进行比较,若为逆序则交换他们 的值。 将第 i+1 与第 i+2 个值进行比较,重复上面过程。 上述过程为第一趟冒泡排序,进行一轮后,其结果是最大的值将...原创 2020-02-14 21:31:20 · 204 阅读 · 0 评论