排序算法-基数排序 RadixSort
2021-06-05 00:05
标签:class 利用 bucket 重复 日期 取出 import tps 字符串 基数排序介绍 基数排序是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。 基数排序 vs 计数排序 vs 桶排序 基数排序有两种方法: 这三种排序算法都利用了桶的概念,但对桶的使用方法上有明显差异: 基数排序步骤 1.找到数据中最大位数的数->可以找到最大数,求其位数 2.按照最低位的数字往0-9十个桶里放,按照数组元素的顺序依次存放 3.按照从小到大,从上到下的顺序依次取出元素,组成新的数组 4.对新数组的次低位重复2、3步骤,直到按照最高位进行2、3步操作,排序完成 时间复杂度 平均时间复杂度 O(n*k) 最坏时间复杂度 O(n*k) 最好时间复杂度 O(n*k) 该算法数据稳定 代码 排序算法-基数排序 RadixSort 标签:class 利用 bucket 重复 日期 取出 import tps 字符串 原文地址:https://www.cnblogs.com/youngst/p/14639148.html
package Sort;
import java.util.Arrays;
public class RadixSort3 {
public static void main(String[] args) {
int[] arr = {53,3,542,748,14,214};
System.out.println(Arrays.toString(arr));
radixSort(arr);
System.out.println(Arrays.toString(arr));
}
public static void radixSort(int[] arr){
//取最大数
int max=arr[0];
for (int i = 1; i
文章标题:排序算法-基数排序 RadixSort
文章链接:http://soscw.com/index.php/essay/90634.html