桶排序(Java语言)

视频讲解地址:【手把手带你写十大排序】8.桶排序(Java语言)_哔哩哔哩_bilibili

代码:

java 复制代码
public class BucketSort {
    public void sortFunction(int[] array, int bucketNum) {
        int max = Integer.MIN_VALUE, min = Integer.MAX_VALUE;
        for (int i : array) {
            max = Math.max(max, i);
            min = Math.min(min, i);
        }
        List<List<Integer>> bucketList = new ArrayList<List<Integer>>();
        for (int i = 0; i < bucketNum; i++) {
            bucketList.add(new ArrayList<Integer>());
        }
        for (int i : array) {
            int bucketIndex = (i - min) * (bucketNum - 1) / (max - min);
            List<Integer> list = bucketList.get(bucketIndex);
            list.add(i);

        }
        for (int i = 0, arrIndex = 0; i < bucketList.size(); i++) {
            List<Integer> bucket = bucketList.get(i);
            Collections.sort(bucket);
            for (int num : bucket) {
                array[arrIndex++] = num;
            }
        }

    }
}
相关推荐
i220818 Faiz Ul17 分钟前
动漫商城|基于springboot + vue动漫商城系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·动漫商城系统
白藏y26 分钟前
【C++】muduo接口补充
开发语言·c++·muduo
海兰32 分钟前
【实战】MCP 服务在 Nacos 中注册状态分析与优化
android·java·github·银行系统·银行ai
zk_one1 小时前
【无标题】
开发语言·前端·javascript
阿里嘎多学长1 小时前
2026-04-05 GitHub 热点项目精选
开发语言·程序员·github·代码托管
OOJO1 小时前
c++---vector介绍
c语言·开发语言·数据结构·c++·算法·vim·visual studio
Makoto_Kimur1 小时前
Java 打印模板大全
java·开发语言·排序算法
程序员榴莲1 小时前
Java(十)super关键字
java·开发语言
HAPPY酷1 小时前
Python高级架构师之路——从原理到实战
java·python·算法
胖咕噜的稞达鸭2 小时前
C++技术岗面试经验总结
开发语言·网络·c++·网络协议·tcp/ip·面试