一、冒泡排序的原理冒泡排序,就是从第一个元素开始,通过两两交换,使小的先冒出来,然后再走第二轮使次小的冒出来,直到最后一轮最大的冒出来,排序完成二、冒泡排序的伪代码实现: 1 bubblesort(A) 2 { 3 for i = 1 to length[A] 4 { 5 ...
分类:
编程语言 时间:
2015-02-28 22:53:29
阅读次数:
226
1 #include 2 #include 3 #include 4 using namespace std; 5 6 7 void displayArray(int* const,const int&); 8 void exchange2(int &a, int &b){ 9 ...
分类:
编程语言 时间:
2015-02-28 15:58:02
阅读次数:
130
天天都在排序。。简直就是要给这个混乱的世界一个正确的秩序。。不过嘛。排序也有快慢之分,冒泡排序法,,思路很简单就是一个个上去打擂台,,这样的时间复杂度很糟糕,,O(N^2)中O是一个常数,O(N^2)是指最大上限(估值)n(n-1)/2 = (n^2 - n)/2最高位估值仍为n^2两种情况是一样的...
分类:
编程语言 时间:
2015-02-28 11:22:33
阅读次数:
174
1、冒泡排序法:如果有N个数,两两相邻进行比较,将最值沉入最后一位置,要进行N-1轮比较,第一轮要比较N-1次,第2轮只要比较N-1-1次,因为第一次已经把最值沉入最后一位置,故不需在进行比较一次,也就是说每一轮都减少一次,所以第2个for循环中j num[j+1]) 8 ...
分类:
编程语言 时间:
2015-02-27 18:20:07
阅读次数:
196
原理:相邻的两个元素进行比较,如符合条件换位比较一轮后确定了最大角标的元素,第二轮最后一个角标就不用再比较了 1 public class Array_BubbleSort { 2 public static void main(String[] args) { 3 int[...
分类:
编程语言 时间:
2015-02-26 21:34:29
阅读次数:
257
排序分类: 内部排序:就是将需要处理的所有数据都加载到内部存储器中进行排序 交换式排序法:是运用数值较后,依判断规则对数据位置进行交换,以达到排序的目的冒泡排序法(Bubble Sort)快速排序法(Quick Sort) 选择式排序法:选择排序法(Select Sort) 堆排序法(Heap S....
分类:
编程语言 时间:
2015-02-26 21:26:49
阅读次数:
156
转自tangjz的博客...基础算法模拟搜索广度优先搜索(BFS)优化:双向BFS深度优先搜索(DFS)优化:折半DFS迭代加深搜索(IDS)启发式搜索(Astar)优化:IDAstar优化:剪枝、位运算排序冒泡排序/选择排序基数排序/桶排序计数排序插入排序/希尔排序快速排序归并排序/求逆序对数堆排...
分类:
编程语言 时间:
2015-02-23 10:50:21
阅读次数:
330
1.冒泡排序
起泡排序的思想非常简单。首先,将 n 个元素中的第一个和第二个进行比较,如果两个元素的位置为逆序,则交换两个元素的位置;进而比较第二个和第三个元素关键字,如此类推,直到比较第 n-1 个元素和第 n 个元素为止;上述过程描述了起泡排序的第一趟排序过程,在第一趟排序过程中,我们将关键字最大的元素通过交换操作放到了具有 n 个元素的序列的最一个位置上。然后进行第二趟排序,在第二趟...
分类:
编程语言 时间:
2015-02-23 09:39:46
阅读次数:
301
题目大意就是说帮你给一些(n个)乱序的数,让你求冒泡排序需要交换数的次数(n
显然不能直接模拟冒泡排序,其实交换的次数就是序列的逆序对数。
由于数据范围是 0 ≤ a[i] ≤ 999,999,999所以先要离散化,然后用合适的数据结果求出逆序
可以用线段树一步一步添加a[i],每添加前查询前面添加比它的大的有多少个就可以了。
也可用树状数组,由于树状数组求的是(1...x)的数量和所以每...
分类:
编程语言 时间:
2015-02-22 20:47:46
阅读次数:
200
1. 小数默认为double类型。
2. 逻辑运算符:&&,||,!,&,|,^
3. 位运算:
& ,|,^,~,《《,》》,》》》
a^b^b = a(得到本身)
位运算是最快的运算方法
两个数值的调换位置的方法:
1.设置一个变量
int a = 1,b = 2,c;...
分类:
其他好文 时间:
2015-02-21 09:45:44
阅读次数:
273