转载:http://blog.csdn.net/pzhtpf/article/details/7560294
冒泡排序、快速排序都属于交换排序,快速排序对冒泡排序优化。
冒泡排序
(1)基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
(2)实例:
(3)用java实现
- public bubbleSort(){
- int a[]={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51};
- int temp=0;
- for(int i=0;i<a.length-1;i++){
- for(int j=0;j<a.length-1-i;j++){
- if(a[j]>a[j+1]){
- temp=a[j];
- a[j]=a[j+1];
- a[j+1]=temp;
- }
- }
- }
- for(int i=0;i<a.length;i++)
- System.out.println(a[i]);
- }
- }
快速排序:
1、算法概念。
2、算法思想。
通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
3、实现思路。
①以第一个关键字 K 1 为控制字,将 [K 1 ,K 2 ,…,K n ] 分成两个子区,使左区所有关键字小于等于 K 1 ,右区所有关键字大于等于 K 1 ,最后控制字居两个子区中间的适当位置。在子区内数据尚处于无序状态。
②把左区作为一个整体,用①的步骤进行处理,右区进行相同的处理。(即递归)
③重复第①、②步,直到左区处理完毕。
4、实现代码。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
|
相关推荐
C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 C语言数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 C语言数据结构课程设计实例...
10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 10个数据结构课程设计实例二叉树...
基于c语言10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 基于c语言10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 基于c语言10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等 ...
二叉树建立遍历冒泡排序快速排序算法:C语言编程实现10个数据结构课程设计实例.zip 二叉树建立遍历冒泡排序快速排序算法:C语言编程实现10个数据结构课程设计实例.zip 二叉树建立遍历冒泡排序快速排序算法:C语言...
不错的练手C语言课程设计例子--10个数据结构课程设计实例、二叉树建立遍历冒泡排序快速排序等 不错的练手C语言课程设计例子--10个数据结构课程设计实例、二叉树建立遍历冒泡排序快速排序等 不错的练手C语言课程设计...
直接插入排序、冒泡排序、快速排序、直接选择排序、堆排序和二路归并排序是计算机科学中经典的排序算法,它们在数据处理和算法学习中占有重要地位。这些排序算法各有特点,适用场景不同,下面将逐一详细介绍,并结合...
选择排序、插入排序、冒泡排序以及快速排序和归并排序的C语言实现,绝对可用
排序算法汇总P: 冒泡排序快速排序直接选择排序插入排序希尔排序 堆排序........
在"毕业答辩-10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.rar"这个压缩包中,包含了多个关键的数据结构和算法实践案例,对于学习者来说,它们提供了宝贵的实践经验。 首先,我们要关注的是“二叉树...
本压缩包文件“C语言二叉树建立遍历冒泡排序快速排序等.rar”提供了这些语言的相关案例,帮助学习者深入理解数据结构和算法。以下是针对这些主题的详细解释: 1. **C语言**:C语言是一种强大的系统级编程语言,被...
在给定的压缩包"基于C语言的实例二叉树建立遍历冒泡排序快速排序源码.zip"中,包含了几个关键的计算机科学概念,主要涉及C语言编程、数据结构(特别是二叉树)、以及两种经典的排序算法——冒泡排序和快速排序。...
这个压缩包“10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.zip”包含了多个与数据结构相关的项目,涵盖了二叉树、冒泡排序和快速排序等关键主题。下面我们将深入探讨这些主题。 首先,让我们关注...