算法源码://BubbleSort.cpp#include using namespace
std;void BubbleSort(int a[], int n){ for(int i=n-1;i>0;i--) { for(int
j=0;ja[j+1]) { int tmp = a[j...
分类:
其他好文 时间:
2014-05-27 02:07:07
阅读次数:
223
冒泡排序,是模仿鱼吐泡沫是的样子,大泡泡先浮出水面,小泡泡浮的比较慢。
今天在看冒泡排序的时候,突然想到模仿算盘的样子做排序。
首先把待排序的每个数字看作算盘的一排珠子,珠子的个数代表这个数字的大小。假设算盘倾斜的时候,珠子会发生侧移。那么当算盘倾斜的时候,第一排珠子的数量肯定是最多的,第二...
分类:
其他好文 时间:
2014-05-23 10:17:12
阅读次数:
290
1.写出下列算法的时间复杂度。
(1)冒泡排序;
(2)选择排序;
(3)插入排序;
(4)快速排序;
(5)堆排序;
(6)归并排序;...
分类:
编程语言 时间:
2014-05-22 11:46:43
阅读次数:
321
排序法最差时间分析平均时间复杂度稳定度空间复杂度冒泡排序O(n2)O(n2)稳定O(1)快速排序O(n2)O(n*log2n)不稳定O(log2n)~O(n)选择排序O(n2)O(n2)稳定O(1)二叉树排序O(n2)O(n*log2n)不一定O(n)插入排序O(n2)O(n2)稳定O(1)堆排序O...
分类:
其他好文 时间:
2014-05-21 23:31:35
阅读次数:
310
常见排序算法主要有:插入排序(直接插入排序、希尔排序)选择排序(直接选择排序、堆排序)交换排序(冒泡排序、快速排序)归并排序基数排序外部排序一.直接插入排序算法思想:在一个待排序列中,从第二个元素开始,依次进行排序,每次都将待排序元素从后往前,依次与前面的元素进行比较,从而将带排序元素移动到一个合适...
分类:
其他好文 时间:
2014-05-21 20:03:36
阅读次数:
353
昨晚折腾了一个晚上,连这一道题目都没AC,太受打击了!这里倒不是算法的问题,主要是既要考虑输出的字符串按字典序排列,又要去掉重复的字符串。本想直接在不保存所有字符串的前提下,直接按照要求输出字符串,但折腾了一晚上,还是决定放弃了,依然是使用最直接的方法,以空间换取结果,将所有的字符串保存到一个字符串数组中,由于全排列后的字符串数最大为9!=362880,故开辟一个362900大的字符串数组用来保存这些字符串,而后对这些字符串进行排序,先用了选择排序,通过strcpy字符串进行排序,结果争取,但第三组测试用例...
分类:
其他好文 时间:
2014-05-21 13:26:39
阅读次数:
236
public class Paixu { public static void
main(String[] args) { paixu(); } public static void paixu(){ int [] a =
{23,12,15,2,4,10}; ...
分类:
其他好文 时间:
2014-05-20 12:47:59
阅读次数:
193
JavaScript版排序算法:冒泡排序、快速排序、插入排序、希尔排序(小数据时,希尔排序会比快排快哦) 1
//排序算法 2 window.onload = function(){ 3 var array = [0,1,2,44,4, 4 324,5...
分类:
编程语言 时间:
2014-05-19 12:20:56
阅读次数:
406
1、算法思想描述: 1)将相邻的两个数进行比较,如果前面的一个大于后面的一个,则将他们交换。每次循环能使一个数达到有序状态。2、时间复杂度: 平均O(n^2)3、实现及优化。以下给出三种实现方式/*
* bubblesort.cpp
*
* Created on: 2014年5月17日
* Author: pc
*/
#include
#include
#inc...
分类:
其他好文 时间:
2014-05-18 15:34:55
阅读次数:
198
经典排序算法:冒泡排序法
让算法会说话,让程序自己告诉我们怎么回事
并有优化方法,使算法效率更高...
分类:
其他好文 时间:
2014-05-18 05:34:13
阅读次数:
281