概要
本章介绍排序算法中的基数排序。内容包括:
1. 基数排序介绍
2. 基数排序图文说明
3. 基数排序实现
3.1 基数排序C实现
3.2 基数排序C++实现
3.3 基数排序Java实现
转载请注明出处:http://www.cnblogs.com/skywang12345/p/3603669.html
更多排序和算法请参考:数据结构与算...
分类:
其他好文 时间:
2014-07-22 23:05:15
阅读次数:
381
归并排序
在提高排序算法性能的方法中,有一类叫做分而治之。我们先研究其中第一种叫做归并排序。归并排序使用递归的方法,不停地把列表一分为二。如果列表是空或只有一个元素,那么就是排好序的(递归基点),如果列表有超过1个的元素,那么切分列表并对两个子列表递归使用归并排序。一旦这两个列表排序完成,称为“归并”的基本操作开始执行。归并是把两个有序列表合并成一个新的有序列表的过程。图10是我们熟悉的列表...
分类:
编程语言 时间:
2014-05-01 22:18:22
阅读次数:
391
所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作...
分类:
编程语言 时间:
2014-05-01 22:02:12
阅读次数:
360
在初次接触排序算法稳定性这个概念时,我一直认为复杂度为O(n2)的算法是稳定的,复杂度为O(nlogn)的算法是不稳定的。当时是这样理解的,复杂度为O(n2)的算法不可能再坏,而复杂度为O(nlogn)的算法在极端情况下可能会退化为O(n2),例如快速排序。但其实这是错误的,稳定性的概念远没有这么复杂,它只表示两个值相同的元素在排序前后是否有位置变化。如果前后位置变化,则排序算法是稳定的,否则是不...
分类:
其他好文 时间:
2014-05-01 17:20:58
阅读次数:
278
日本程序员norahiko,写了一个排序算法的动画演示,非常有趣。这个周末,我就用它当做教材,好好学习了一下各种排序算法。排序算法(Sorting
algorithm)是计算机科学最古老、最基本的课题之一。要想成为合格的程序员,就必须理解和掌握各种排序算法。目前,最常见的排序算法大概有七八种,其中"...
分类:
编程语言 时间:
2014-05-01 11:33:13
阅读次数:
595
冒泡排序
思路:就是每次将最大或最小的元素放到数组的最后,so easy!时间复杂度为(O(n^2))
public class BubbleSort {
public static void bubbleSort(int[] a) {
for (int j = 1; j < a.length; j++) {
for (int i = 0; i < a.length - j; i+...
分类:
编程语言 时间:
2014-04-30 22:12:40
阅读次数:
309
面试也是一门学问,在面试之前做好充分的准备则是成功的必须条件,而程序员在代码面试时,常会遇到编写算法的相关问题,比如排序、二叉树遍历等等。
在程序员的职业生涯中,算法亦算是一门基础课程,尤其是在面试的时候,很多公司都会让程序员编写一些算法实例,例如快速排序、二叉树查找等等。
本文总结了程序员在代码面试中最常遇到的10大算法类型,想要真正了解这些算法的原理,还需程序员们花些功夫。...
分类:
编程语言 时间:
2014-04-30 22:11:39
阅读次数:
356
在上一篇排序算法的文章中介绍了插入排序,分别为直接插入排序和希尔排序。今天我们继续来介绍其他的排序算法。
1、选择排序:简单选择排序
2、选择排序:堆排序...
分类:
其他好文 时间:
2014-04-29 13:36:20
阅读次数:
340