桶排序(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;
            }
        }

    }
}
相关推荐
一晌小贪欢9 小时前
Python安装最新(2026版)python最新版安装(图文并茂-详细)
开发语言·python·python安装·pycharm安装·python最新安装·pycharm最新安装
一起养小猫9 小时前
LeetCode100天Day10-单词规律与同构字符串
java·开发语言·数据结构
计算机毕设VX:Fegn089510 小时前
计算机毕业设计|基于springboot + vue出行旅游安排系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·课程设计
机器懒得学习10 小时前
通达信分时资金流向分析系统【附源码】
开发语言·python
毕设源码-钟学长10 小时前
【开题答辩全过程】以 高校教材样书申领系统为例,包含答辩的问题和答案
java
benpaodeDD10 小时前
项目集成springmvc
java
刀法如飞10 小时前
API接口安全设计:动态盐值与签名机制的实现与剖析
java·前端·后端
又是忙碌的一天10 小时前
Spring IOC:依赖注入和bean的生命周期
java·后端·spring
计算机学姐10 小时前
基于SpringBoot的个人健康管理系统【2026最新】
java·spring boot·后端·mysql·spring·intellij-idea·mybatis