今天重温了下排序算法,包括冒泡排序法和直接排序法,这些都比较简单,只是快速排序法比较难,于是重点研究了下。 先说一说原理:快速排序法是采用递归的方式对待排序的数列进行若干次的操作,每次操作使得被操作的数列部分以某个元素为分界值分成两部分,一部分小于该分界值,另一部分大于该分界值.该分界值一般被...
分类:
编程语言 时间:
2014-10-13 16:32:29
阅读次数:
278
快速排序算法(quick sort)是对冒泡排序的一种改进,是目前内部排序中速度最快的一种排序方法。基本思想是:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字比另一部分记录的关键字小,则可对这两部分记录分别继续进行排序,以达到整个序列有序。 整个算法的时间复杂度是:O(nlog2....
分类:
编程语言 时间:
2014-10-12 13:41:38
阅读次数:
118
冒泡的基本思路:从元素最后处开始向前多遍扫描(邻位比较),遇到逆序元素就交换位置,使得每次扫面都能将扫面区中的最小值移至最前位置#include void bubble_sort(int arr[] ,int length){ int i,j; for (i = 0; i i ; j--...
分类:
编程语言 时间:
2014-10-12 13:34:47
阅读次数:
140
各算法的时间复杂度 平均时间复杂度 插入排序 O(n^2) 冒泡排序 O(n^2) 选择排序 O(n^2) 快速排序 O(n log n) 堆排序 O(n log n) 归并排序 O(n log n) 基数排序 O(n) 希尔排序 O(n^1.25)1 快速排序(QuickSort)快速排序是一个就...
分类:
编程语言 时间:
2014-10-11 21:51:36
阅读次数:
222
好悲催,住房停电,手机停机。只好来网吧,还没有usb....? ????还好哥机智的写完一段,马上保存。这破网吧真不靠谱,莫名重启了,竟然... 一、快速排序 ????快速排序(Quicksort)是对冒泡排序的...
分类:
编程语言 时间:
2014-10-11 12:20:55
阅读次数:
221
排序是一个处理数据的过程,它总是和查找共同出现,因为排序的目的就是方便查找数据,排序的好坏决定了查找的效率。...
分类:
编程语言 时间:
2014-10-10 18:40:44
阅读次数:
266
冒泡排序是很easy理解和实现,,以从小到大排序举例:设数组长度为N。1.比較相邻的前后二个数据,假设前面数据大于后面的数据,就将二个数据交换。2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。3.N=N-1,假设N不为0就反复前面二步,否则排序完毕...
分类:
编程语言 时间:
2014-10-10 18:29:34
阅读次数:
172
import java.util.Scanner;/* * * ==================冒泡 排序 */public class BubbleSort { public static void main(String[] args) { Scanner scanne...
分类:
其他好文 时间:
2014-10-10 02:31:03
阅读次数:
151
这不是个新鲜的话题,是自己之前一直理解错了. int a[10] ={2,4,1,0,9,5,7,6,8,3}; 选择法排序: 第一次循环.a[0] 比较所有的的元素,最小的,跟a0交换 第二次循环,找到剩下的最小的,跟a1 交换 冒泡排序, 也是两层循环 , 是 1-9, 在内层循环...
分类:
其他好文 时间:
2014-10-09 17:34:57
阅读次数:
182