桶排序java版本
来源:互联网 发布:网络阅卷成绩 编辑:程序博客网 时间:2024/05/22 03:07
public class Bucket_sort {
/**
* O(n)
* 适合均匀分布的小数0.1-0.9之间的小数
*/
public static void blubble_sort(float[] a){
for(int i=0;i<a.length;i++){
for(int j=0;j<a.length-1-i;j++){
if(a[j]>a[j+1]){
float temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
}
public static void print(float[] a){
for(int i=0;i<a.length;i++){
System.out.print(a[i]+"\t");
}
System.out.println();
}
public static void bucket_sort(float[] a){
float[][] b=new float[10][20];
for(int i=0;i<a.length;i++){
int rowindex=(int)Math.floor(a[i]*10);
System.out.println(rowindex);
for(int j=0;j<20;j++){
if(b[rowindex][j]==0){
b[rowindex][j]=a[i];
break;
}
}
}
for(int i=0;i<10;i++){
blubble_sort(b[i]);
}
int k=0;
for(int i=0;i<b.length;i++){
for(int j=0;j<b[i].length;j++){
if(b[i][j]!=0){
a[k++]=b[i][j];
}
}
}
}
public static void main(String[] args) {
float[] a=new float[]{0.1f,0.4f,0.9f,0.8f,0.5f,0.1f,0.6f};
print(a);
bucket_sort(a);
print(a);
}
}
0 0
- 桶排序java版本
- 选择排序java版本
- 堆排序 java版本
- 快速排序 java版本
- 快速排序Java版本
- java版本 堆排序
- 归并排序 --Java版本
- 快速排序 --Java版本
- 归并排序 (java版本的)
- 排序算法(java版本)
- 冒泡排序优化 java版本
- 快速排序的java版本
- 排序总结(java版本)
- Java版本 排序算法总结
- 基础排序算法Java版本(上)
- 经典冒泡排序算法JAVA版本
- 插入排序算法实现java版本
- 选择排序算法实现java版本
- C#学习日记08---数据类型 之 字符类型
- 红黑的插入java版本
- Android---Unable to execute dex: Multiple dex files define Landroid/support/annotation/AnimRes;
- 二进制中有多少个1
- iOS图文攻略之UIView 属性
- 桶排序java版本
- Picasso分析04
- 希尔排序
- hdu 1010 tempter of the bone
- Ubuntu 14.10下部署Django到Apache服务器_
- HDU-5444 Elven Postman
- UVA - 1588 Kickdown
- 初学Service
- Data Binding (ListView)