Heaps and Heapsort: 堆是一种快速访问最大优先级元素的数据结构,这是快速实现选择排序的基础,但是总体来说平均速度比快排要慢一点,不过其最坏情况和平均情况是差不多的。 首先是堆的定义,每个结点比它的孩子结点都小(所以父节点最小),或者每个结点都比它的孩子结点大(父节点最大),把A[1 ...
分类:
其他好文 时间:
2020-02-03 12:07:47
阅读次数:
112
1.选择排序法 每循环一次将最值挑出来放在前面,实践复杂度为O(n^2),不稳定排序,其基本的语法如下: 2.冒泡排序法 每循环一次将最值冒到尾部,时间复杂度为O(n^2),稳定排序,其基本的语法如下: 3.C++STL之sort排序 sort排序可以捆绑结构体一起使用,求出原来的序号和排序后的序号 ...
分类:
编程语言 时间:
2020-02-02 13:36:17
阅读次数:
69
归纳 1.时间复杂度为o(n^2) 冒泡排序 选择排序 插入排序 希尔排序 2.时间复杂度为o(nlogn) 快速排序 归并排序 堆排序 3.时间复杂度为线性排序 计数排序 桶排序 基数排序 ...
分类:
编程语言 时间:
2020-02-02 11:33:32
阅读次数:
66
1 #include <stdio.h> 2 3 #define ASC 0 //升序,从左到右,从小到大 4 #define DESC 1 //降序,从左到右,从大到小 5 #define TRUE 1 //布尔值,真 6 #define FALSE 0 //布尔值,假 7 8 typedef i ...
分类:
编程语言 时间:
2020-02-01 15:56:52
阅读次数:
89
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 实例 import sys A = [6 ...
分类:
编程语言 时间:
2020-01-31 14:25:52
阅读次数:
63
1.排序模拟枚举 复杂度 一般(最坏)复杂度 :记号为 O(……) 均摊复杂度 $\qquad\quad\,$ :记号为 Θ(……),但一般写成O(……) 约定 1. 省略系数O(100n)=O(10n)=O($\frac{1}{2}$n)=O(n). 2. log底数省略 排序 选择排序 这个大家 ...
分类:
其他好文 时间:
2020-01-31 12:10:09
阅读次数:
75
做如下定义 冒泡排序算法 选择排序算法 测试代码 ...
分类:
编程语言 时间:
2020-01-30 23:00:26
阅读次数:
79
第一种:选择排序 第二种:冒泡排序、改进冒泡排序 第三种:插入排序 第四种:快速排序 第五种:归并排序 #include<iostream> #include<cstring> using namespace std; const int MAXN=1000; int a[MAXN]; int n; ...
分类:
编程语言 时间:
2020-01-29 23:39:35
阅读次数:
72
一、冒泡排序(Bubble Sort) 二、选择排序(Selection Sort) 三、插入排序(Insertion Sort) 九、桶排序(Bucket Sort) ...
分类:
编程语言 时间:
2020-01-26 22:13:19
阅读次数:
121
第一种(较差) 第二种(较好:利用冒泡排序) 这道题用选择排序还可以减少交换的次数,达到更好的效果 第三种(利用选择排序:由于第二种) ...
分类:
编程语言 时间:
2020-01-26 19:17:34
阅读次数:
108