本文介绍了排序算法的 Java 代码实现,所有代码均可通过 菜鸟工具在线编译器 直接运行,因此打算整理一下分享给大家。
简介基数排序是另外一种比较有特色的排序方式,它不需要直接对元素进行相互比较,也不需要将元素相互交换,你需要做的就是对元素进行“分类”。
基数排序(以整形为例),将整形10进制按每位拆分,然后从低位到高位依次比较各个位。主要分为两个过程: (1) 分配,先从个位开始,根据位值(0-9)分别放到0~9号桶中(比如53,个位为3,则放入3号桶中) (2) 收集,再将放置在0~9号桶中的数据按顺序放到数组中 重复(1)(2)过程,从个位到最高位(比如32位无符号整形最大数4294967296,最高位10位)
实例1. Java 代码
public class Main {
public static void main(String[] args) {
int[] a = {13,25,1111,232,4454,79,86,98,61,447};
System.out.println("初始值:");
printArray(a);
a= sort(a);
System.out.println("\n排序后:");
printArray(a);
}
public static int[] sort(int[] data) {
int maxLength = getMaxLength(data);
int[] temp = baseSort(data,0,maxLength);
return temp;
}
private static int[] baseSort(int[] data,int i,int maxLength) {
if(i >= maxLength) {
return data;
}
int len = data.length;
int[] count = new int[10];
int[] temp = new int[len];
for (int j = 0;j
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?