算法思路 排序算法 时间复杂度 最好情况 最坏情况 空间复杂度 稳定性 插入排序 直接插入 O(n2) O(n) O(n2) O(1) 是 希尔排序 O(n(logn)2) O(1) 否 交换排序 冒泡排序 O(n2) O(n) O(n2) O(1) 是 快速排序 O(nlogn) O(nlogn) ...
分类:
编程语言 时间:
2017-01-22 07:45:55
阅读次数:
185
一、如何去小数点前两位,并四舍五入? 二、如何格式化日期? 三、打印昨天的当前时刻 8. 排序都有哪几种方法?请列举。用JAVA实现一个快速排序?排序的方法有:插入排序(直接插入排序、希尔排序),交换排序(冒泡排序、快速排序),选择排序(直接选择排序、堆排序),归并排序,分配排序(箱排序、基数排序) ...
分类:
其他好文 时间:
2017-01-01 10:56:30
阅读次数:
246
目录(?)[-] 目录(?)[-] 概述 插入排序直接插入排序Straight Insertion Sort 插入排序希尔排序Shells Sort 选择排序简单选择排序Simple Selection Sort 选择排序堆排序Heap Sort 交换排序冒泡排序Bubble Sort 交换排序快速 ...
分类:
编程语言 时间:
2016-12-30 11:38:29
阅读次数:
263
基本思想:两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。冒泡排序1.基本思想 将被排序的记录数组R[1...n]垂直排序,每个记录R[i]看做是重量为R[i].key的气泡。根据轻气泡不能再重气泡之下的原则,从下往上的原则,从下往上(也可以从上往下)扫描数组... ...
分类:
编程语言 时间:
2016-12-24 22:48:43
阅读次数:
266
一、排序: 1.选择排序: 2.交换排序: 3.插入排序 二、查找: 三、节点遍历: 四、数组去重: 时间复杂度:找出算法中的基本语句->计算基本语句的执行次数的数量级->用大O记号表示算法的时间性能。 空间复杂度:存储算法本身所占用的存储空间+算法的输入输出数据所占用的存储空间+算法在运行过程中临 ...
分类:
编程语言 时间:
2016-12-23 19:07:49
阅读次数:
190
数据结构实验之排序二:交换排序 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 冒泡排序和快速排序都是基于"交换"进行的排序方法,你的任务是对题目给定的N个(长整型范围内的)整数从小到大排序, ...
分类:
编程语言 时间:
2016-12-03 15:46:33
阅读次数:
272
冒泡排序 冒泡排序是通过无序区相邻两个元素之间进行比较和位置交换,达到排序的目的。 插入排序是设定序列的 1 到 n-1 元素为无序区,初始有序区就只有 0 这个元素,然后将无序区中的元素和有序区中的元素逐个进行比较插入。从而是不断扩大有序区的范围。减少无序区的范围直至排序完成。 而冒泡排序则视整个 ...
分类:
编程语言 时间:
2016-12-01 14:26:48
阅读次数:
203
选择排序与冒泡排序的特点与区别 ++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++ 陌陌说:选择排序(包含shaker排序/堆排序)和冒泡排序都属于交换排序的一种 ...
分类:
编程语言 时间:
2016-11-15 14:32:33
阅读次数:
174
排序算法小结 排序有可以分为以下几类: (1)、插入排序:直接插入排序、二分法插入排序、希尔排序。 (2)、选择排序:简单选择排序、堆排序。 (3)、交换排序:冒泡排序、快速排序。 (4)、归并排序 (5)、基数排序 一、插入排序 思想:每步将一个待排序的记录,按其顺序码大小插入到前面已经排序的字序 ...
分类:
编程语言 时间:
2016-10-08 02:07:40
阅读次数:
183
基本思想: 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。 算法实现:(HDU 1040 亲测 AC) #include<iostream> usi ...
分类:
编程语言 时间:
2016-09-22 00:55:03
阅读次数:
214