博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单意义上的桶排序
阅读量:7056 次
发布时间:2019-06-28

本文共 406 字,大约阅读时间需要 1 分钟。

简单意义上的桶排序:

  • 桶排序的原理是先安排N+1个桶作为容器,若数据范围为N的话。

  • 然后将测试数据(所需排序的数据)进行循环,放入对应的桶内。数据一定是在范围N内的

  • 最后,循环桶里的元素,并且输出,进行从大到小或从小到大的排序。

例如:

  • 我们的取值范围是10,那么就要定义一个 11长度的数组$arr. 并且让所有的元素值都为0

  • 然后,对需要排序的数组进行循环 如5,3,5,2,8.

  • 将数据依次对应$arr桶数组内元素,即 如果是5,则使$arr[5]++.

  • 这时候 $arr[2]=1 $arr[3]=1 $arr[5]=2 $arr[8]=1

  • 然后循环$arr的数组,若$arr[2]=1,则循环输出元素2一次,$arr[5]=2,则循环输出5两次

  • 结果输出即为 2 3 5 5 8

  • 如果循环数值是从大到小 则会是从大到小的排序

"; }}?>

缺点:

  • 浪费空间.

  • 无法进行浮点数据的排序.

转载地址:http://gagol.baihongyu.com/

你可能感兴趣的文章
Prometheus + Grafana 监控 Linux 和 MySQL 安装配置
查看>>
《Spring Recipes》第二章笔记:Loading External Resources
查看>>
APICloud用body来提交json数据
查看>>
UNIX网络通信详解
查看>>
让linux启动更快的方法
查看>>
1234
查看>>
windows下composer设置
查看>>
noVNC ready: native WebSockets, canvas renderin...
查看>>
Primary market
查看>>
【java多线程】生产者消费者之ArrayBlockingQueue实现
查看>>
101条风险管理准则
查看>>
elasticsearch安装及分词、拼音插件安装
查看>>
erlang mochiweb的测试数值
查看>>
关于cuda拷贝的速度测试
查看>>
线程池
查看>>
go revel 简单性能测试
查看>>
Nginx入门之负载均衡
查看>>
正则匹配首尾
查看>>
android点滴7:adb不是内部或外部命令,也不是可运行的程序或批量文件
查看>>
Flex判断两个字符串是否相等
查看>>