Java常用三种算法排序比较冒泡排序:packagedemo1;
/**
*
*@authorxiaoye2014-5-13
*/
/**
*有N个数据需要排序,则从第0个数开始,依次比较第0和第1个数据,
*如果第0个大于第1个则两者交换,否则什么动作都不做,继续比较第1个第2个…,
*这样依次类推,直至所有数据都“冒泡..
分类:
编程语言 时间:
2014-05-14 17:53:10
阅读次数:
306
在 O(nlogn)的时间内对一个链表进行排序。。明显是要用归并或者快排
第一次知道说原来归并也可以用链表来写,被刷了下三观。。。。。用快慢指针的方法找分界点。
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNod...
分类:
其他好文 时间:
2014-05-14 15:03:49
阅读次数:
230
1.排序简单排序:?冒泡排序:将n个数从上往下排列,从第0个数开始依次对前n个、前n-1个、前n-2个数进行比较,保持小数在前大数在后,不符合就交换。在这个过程中,最后一个数始终是最大数。?选择排序:对所有n个、后n-1个、后n-2个依次比较,用一个变量存最小数,一趟比较完成之后,将最小数与所比较数...
分类:
其他好文 时间:
2014-05-12 12:28:03
阅读次数:
270
STL库中实现了nth_element函数,实现的功能是 “返回n个元素中的第k小的元素”。
首先,头脑风暴一下“返回n个元素中的第k小的元素”的算法:
1
排序 ,首选快排 O(n*logn),取出第k个即可。
2
其次,是维护一个大小为k的数组,找出数组中的最大值kmax,然后依次遍历剩下的 n-k 个元素,如果小雨kmax,则替换掉kmax
元素,然后再...
分类:
其他好文 时间:
2014-05-11 07:35:46
阅读次数:
250
大家经常看到或听到“大数据”三个字,尤其是今年大数据更是火的不能再火的词语。面对大数据,你如果连最基本的算法(排序和查找)都不懂的话,你怎么能从容的应对大数据。无论你的技术多么强,如果没有基础也强不到哪去。
不多说了,我们直接进入今天的主题。
总有人说排序很...
分类:
其他好文 时间:
2014-05-09 09:06:33
阅读次数:
255
日本程序员norahiko,写了一个排序算法的动画演示,非常有趣。这个周末,我就用它当做教材,好好学习了一下各种排序算法。排序算法(Sorting
algorithm)是计算机科学最古老、最基本的课题之一。要想成为合格的程序员,就必须理解和掌握各种排序算法。目前,最常见的排序算法大概有七八种,其中"...
分类:
编程语言 时间:
2014-05-01 11:33:13
阅读次数:
595