基数排序(radix sort)是属于“分配式排序”(distribution sort),基数排序法又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用。
排序思想:
首先按照数据的最低位(个位)将数据分配到0~9十个桶中,然后依次将这些桶中的数据取出来得到按照个位排序后的结果,然后...
分类:
其他好文 时间:
2014-08-19 12:58:54
阅读次数:
253
概念 每一趟在最后的n-i+1(i=1,2,...,n-1)中取最小的记录作为有序表的第i个记录 优点:算法简单,容易实现 缺点:每次只能确定一个元素 Java实现: package com.liuhao.sort; import java.util.Arrays; //定义一个数据包装类 class DataWrap implements Comp...
分类:
其他好文 时间:
2014-08-19 12:54:54
阅读次数:
186
概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们这里说说八大排序就是内部排序。 当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。 快速排序:是目前基于比...
分类:
其他好文 时间:
2014-08-19 12:45:54
阅读次数:
247
所谓排序,就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。其确切定义如下: 输入:n个记录R1,R2,…,Rn,其相应的关键字分别为K1,K2,…,Kn。 输出:Ril,Ri2,…,Rin,使得Ki1≤Ki2≤…≤Kin。(或Ki1≥Ki2≥…≥Kin)。 1.被排序对象--文件 被排序的对象--文件由一组记录组成。 记录则由若干个数据项(或域)组成...
分类:
其他好文 时间:
2014-08-19 10:58:24
阅读次数:
210
快速排序算法程序可以写得千奇百怪,但最易理解的个人认为仍是下面的:#include#include#includevoid swap(int *a ,int *b){ int t = *a; *a = *b; *b = t;}int partition(int array[],in...
分类:
其他好文 时间:
2014-08-19 10:46:44
阅读次数:
182
快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序n个项目要Ο(nlogn)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(nlogn)算法更快,因为它的内部循环(innerloop)可以在大部分的架构上很有效率地被实现出来。快速排序使用...
分类:
其他好文 时间:
2014-08-19 10:37:34
阅读次数:
200
排序算法—冒泡排序排序算法—冒泡排序Table of Contents1 问题描述2 冒泡排序(Bubble)2.1 冒泡排序(一)2.2 冒泡排序(二)2.3 冒泡排序(三)2.4 冒泡排序(四)3 阅读参考1 问题描述引子 排序是数据结构中十分重要的一章,排序算法有很多种,一直没时间整理而且很多...
分类:
其他好文 时间:
2014-08-18 21:45:02
阅读次数:
366
排序算法(Sorting algorithm):将一串数据依照特定排序方式进行排列的一种算法...
分类:
编程语言 时间:
2014-08-18 20:37:23
阅读次数:
366
冒泡排序算法是思路最简单、最直接的排序方法之一。每遍历一遍,则将最大(或者最小)的一个数冒泡出来。预先定义的排序类型。由于只是为了验证排序方法是否正确,所以此处只是简单的对10个元素进行排序检测。如下所示:#define MAXSIZE 10typedef struct { int r[MAXSI....
分类:
其他好文 时间:
2014-08-18 20:27:32
阅读次数:
210
分而治之,归并排序
算法简单易懂,第一次编写错误,误把原数组下表当做临时数组考虑,结果可想而知,访问越界
下面是正确代码
import java.util.Scanner;
public class MergeSort {
/**
* @param args
*/
public static void main(String[] args)
{
// TO...
分类:
编程语言 时间:
2014-08-18 18:37:12
阅读次数:
254