当前位置: 首页 > news >正文

上海品划网站建设有限公司做网站的规划和设想

上海品划网站建设有限公司,做网站的规划和设想,建筑装饰网站模板,优惠活动推广文案桶排序的思想是#xff1a; 1.将区间划分为 n 个相同大小的子区间#xff0c;每个子区间称为一个桶 2.遍历数组#xff0c;将每个数字装入桶中 3.对每个桶内的数字单独排序#xff0c;这里需要采用其他排序算法#xff0c;如插入、归并、快排等 4.最后按照顺序将所有桶内的…桶排序的思想是 1.将区间划分为 n 个相同大小的子区间每个子区间称为一个桶 2.遍历数组将每个数字装入桶中 3.对每个桶内的数字单独排序这里需要采用其他排序算法如插入、归并、快排等 4.最后按照顺序将所有桶内的数字合并起来 桶排序在实际工作中的应用较少不仅因为它需要借助于其他排序算法还因为桶排序算法基于一个假设:所有输入数据都服从均匀分布也就是说输入数据应该尽可能地均匀分布在每个桶中。只有这个假设成立时桶排序运行效率才比较高。 在最差的情况下所有数据都会被装入同一个桶中此时桶排序算法只会徒增一轮遍历。 使用桶排序算法时我们需要考虑两个因素 1.设置多少个桶比较合适 2.桶采用哪种数据结构 这两个因素会直接影响到桶排序的内存和效率 1.桶的数量桶的数量过少会导致单个桶内的数字过多桶排序的时间复杂度就会在很大程度上受桶内排序算法的影响。桶的数量过多占用的内存就会较大并且会出现较多的空桶影响遍历桶的效率。具体设置多少个桶需要根据实际情况决定。 2.桶的数据结构: 如果将桶的数据结构设置为数组那么每个桶的长度必须设置为待排序数组的长度因为我们需要做好最坏的打算即所有的数字都被装入了同一个桶中所以这种方案的空间复杂度会很高。那么是不是将桶的数据结构设置为链表就更好呢?使用链表有一个好处即所有桶的总长度刚好等于待排序数组的长度不会造成内存浪费。但使用链表也会有一些问题我们待会一一分析。 // 桶排序函数 void bucketSort(std::vectorint arr) {int max *std::max_element(arr.begin(), arr.end()); // 找到数组中的最大值int min *std::min_element(arr.begin(), arr.end()); // 找到数组中的最小值int range max - min 1; // 确定桶的范围// 创建链表桶std::vectorstd::listint buckets(range);// 将元素分布到桶中for (int num : arr) {buckets[num - min].push_back(num);}// 对每个桶中的元素进行排序使用数组排序for (std::listint bucket : buckets) {if (!bucket.empty()) {std::vectorint temp(bucket.begin(), bucket.end()); // 将链表元素复制到临时数组std::sort(temp.begin(), temp.end()); // 对临时数组进行排序std::copy(temp.begin(), temp.end(), bucket.begin()); // 将排序后的结果复制回链表}}// 合并排序后的桶内容以获得最终结果int index 0;for (const std::listint bucket : buckets) {for (int num : bucket) {arr[index] num;}} }
http://www.w-s-a.com/news/790688/

相关文章:

  • 济南网站建设多少钱郑州公司做网站
  • 在阿里云网站建设wordpress模板如何修改字体
  • 网站推广方案设计购物网站模块例子
  • 潍坊网站定制公司网站图片放大特效怎么做的
  • 淘宝店铺买卖湘潭seo优化价格
  • 最好的网站建设用途合肥企业网站建设
  • 计算机编程与网站建设好玩的网页传奇
  • 商务网站建设找哪家本地推广找哪些网站
  • 手机h5网站企业网站管理系统的运维服务
  • 南京建设网站公司网站游戏怎么制作
  • 成都建站程序苏州市建设局招标网站首页
  • 自助建网站市场公司起名大全2020最新版的
  • dede网站模板北京 网站开发 大兴
  • 网站优化师招聘建设牌安全带官方网站
  • 南京网站建设网站做视频网站用什么格式
  • 普陀做网站价格wordpress接入qq互联
  • 网站2级页面怎么做杭州哪家做外贸网站
  • 做了静态网站怎么显示在互联网上营销策划与运营方案
  • 常见的英文网站国内军事新闻大事件
  • 傻瓜式做网站程序微信怎么开公众号
  • c2c电商网站wordpress仿36kr主题
  • 网站建设公司开发免费图纸网站
  • 一个网站页面设计多少钱做预算查价格的网站是哪个
  • 鳌江哪里有做网站百度短链接在线生成
  • 有没有什么做水利资料的网站杭州建设信用平台
  • 电子商务网站建设及推广方案论文wordpress无法显示文章
  • 建设工程监理网站前端和后端分别需要学什么
  • 公司网站制作效果国内最好的在线网站建设
  • 徐州好点的做网站的公司有哪些wordpress 工具插件下载
  • 如何用云服务器建设网站微网站免费开发平台