桶排序(bucket sort)
来源:互联网 发布:广州小孩学编程 编辑:程序博客网 时间:2024/05/29 23:48
任何使用比较的排序算法时间复杂度通常为O(N log N),但是在某些特殊情况下,以线性时间进行排序还是有可能的。
桶排序假设输入的数据均为小于M的正整数,然后声明一个大小为M的数组L,数组值均初始化为0,读取输入数据i,并执行L[i]++,则L数组中不为0的元素值的下标序列就是排序后的序列。
实现代码如下:
#include<iostream>using namespace std;void BucketSort(int input[], int n);int main(){ int input[10] = { 2, 0, 1, 7, 0, 1, 0, 1, 8, 1}; //示例代码取值较小 BucketSort(input, 10);}void BucketSort(int input[], int n){ int tmp[9] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; for (int i = 0; i < n; i++) tmp[input[i]]++; for (int i = 0, j = 0; i < 9; i++) while (tmp[i]--) { input[j] = i; j++; }}
0 0
- 桶排序(bucket sort)
- 桶排序(Bucket Sort)
- 桶排序(bucket sort)
- bucket sort 桶排序
- 桶排序(Bucket Sort)
- 桶排序 Bucket sort
- 桶排序(Bucket Sort)
- 桶排序Bucket sort
- 桶排序Bucket sort
- 桶排序-Bucket sort
- 桶排序 Bucket sort
- 桶排序-Bucket Sort
- 简化的桶排序(Bucket Sort)
- Bucket sort 桶排序(含EOF)
- 桶排序-Bucket Sort
- Java排序算法--桶式排序(Bucket Sort)
- 排序总结系列八:桶排序Bucket sort(基数排序)
- (四)分配排序:桶排序(Bucket Sort)
- 2.系统开发基础-软件开发方法(2)
- CONCAT(字符串连接函数)和GROUP_CONCAT的一个例子
- 栈的解析及C++实现
- Python NLTK 学习笔记1
- Android中点击事件的4中写法
- 桶排序(bucket sort)
- 路由配置与管理——ISIS路由配置与管理3
- java socket简易聊天室
- SpringBoot -- thymeleaf
- weget 下载整个网站
- (c++)求以下三数的和,保留2位小数 1~a之和 1~b的平方和 1~c的倒数和(100 50 10)
- Node.js 通过http调用外部接口
- 设置Framework版本号
- 畅通工程(克鲁斯卡尔算法)