这篇复习冒泡排序。
冒泡排序也是一种稳定排序、内排序。
冒泡排序的基本思想:对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
插入排序比冒泡排序快!
上面说的是普通的冒泡排序算法,时间复杂度是O(n^2),这种方法只能一趟排序...
分类:
编程语言 时间:
2015-02-21 09:42:32
阅读次数:
186
堆优先队列:特殊的”队列”,取出元素的顺序是依照元素的优先权(关键字)大小,而不是元素进入队列的先后顺序
堆是优先队列的完全二叉树表示。
堆的两个特性:
①结构性:用数组表示的完全二叉树
②有序性:任意结点的关键字是其子树所有结点的最大值,叫最大堆(或最小值,叫最小堆)(注意从根结点到任意结点路径上结点序列的有序性)下面举一个最大堆的例子。
/** 最大堆的操作 */
typedef st...
分类:
编程语言 时间:
2015-02-17 22:21:37
阅读次数:
231
<?php
/**
*BubbleSort0($arr):冒泡排序
*BubbleSort1($arr):冒泡排序——优化
*BubbleSort2($arr):冒泡排序——另一种实现方法
*SelectSort($arr):选择排序
*InsertSort($arr):插入排序
*ShellSort($arr):希尔排序
*/
classSort{
/**
*冒泡排序:指的是两两相邻的数据直接..
分类:
编程语言 时间:
2015-02-05 07:13:33
阅读次数:
167
Is Bigger Smarter?Time Limit: 3000MSMemory Limit: Unknown64bit IO Format: %lld & %llu Submit Status DescriptionQuestion 1: Is Bigger Smarter?The Probl...
分类:
编程语言 时间:
2015-01-23 17:40:53
阅读次数:
233
会给出两个数字,前面一个数字N表示有几个待排序元素,后面一个数字M表示有几个关系。
输出三种情况:
1. 第M对关系能得出个数字的唯一排序:12345…
2. 第X对序列与之前的X-1对序列出现矛盾
3. 排序序列不唯一...
分类:
编程语言 时间:
2015-01-20 12:08:04
阅读次数:
237
快速排序是最流行的,也是速度最快的排序算法(C++ STL 的sort函数就是实现的快速排序); 快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数...
分类:
编程语言 时间:
2015-01-03 14:41:57
阅读次数:
180
1、基数排序数据:5 45 81 27 61 91 93 42 28 36step1:建0~9 的空队列step2:按个位数放入 取出取出后:81 61 91 42 93 5 45 36 27 28step3:按十位数放入 取出取出后:5 27 28 36 45 61 81 91 93排序完毕2、堆...
分类:
编程语言 时间:
2014-12-28 01:46:00
阅读次数:
208
Python中排序主要有两个函数:sorted和列表成员函数sort,两者除了调用方式有些区别外,最显著的区别是sorted会新建一个排序好的列表并返回,而sort是修改原列表并排好序。sorted的原型是:
sorted(iterable, cmp=None, key=None, reverse=False)
sort的原型是:
list.sort(cmp=None, key=None, ...
分类:
编程语言 时间:
2014-11-14 10:49:10
阅读次数:
225
冒泡排序的基本思想
冒泡排序(Bubble Sort)是一种交换排序,它的基本思想是:两两比较相邻记录的关键字,如果凡需则交换,直到没有凡需的记录位置。
一、冒泡排序简单实现(初级版)
#include "stdafx.h"
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
typedef int Status; ...
分类:
编程语言 时间:
2014-10-25 13:16:04
阅读次数:
260
1、排序技巧
实现一次排序即完成组合排序:将多个徐排序的数字当作字符串首尾连接在一起进行排序。用到字符串比对
2、排序的稳定性
3、内排序和外排序
内排序是在整个排序过程中,待排序的所有记录全部被防止在内存中。外排序是由于排序的记录个数太多,不能同时放置在内存,整个排序过程需要在内外存之间多次交换数据才能进行。
时间性能:高效的内排序算法应该是具有尽可能少的关键字比较次数和尽可能少的记录...
分类:
编程语言 时间:
2014-10-25 10:37:30
阅读次数:
141