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

中山住房和建设局网站平面设计相关的网站有哪些

中山住房和建设局网站,平面设计相关的网站有哪些,紫砂壶网站开发与设计报告论文,珠海网站建设多少钱个人主页#xff1a;平行线也会相交 欢迎 点赞#x1f44d; 收藏✨ 留言✉ 加关注#x1f493;本文由 平行线也会相交 原创 收录于专栏【数据结构初阶#xff08;C实现#xff09;】 我们直到一般的排序都是通过关键字的比较和移动这两种操作来进行排序的。 而今天介绍的… 个人主页平行线也会相交 欢迎 点赞 收藏✨ 留言✉ 加关注本文由 平行线也会相交 原创 收录于专栏【数据结构初阶C实现】 我们直到一般的排序都是通过关键字的比较和移动这两种操作来进行排序的。 而今天介绍的基数排序并不是依靠关键字的比较和移动来进行数据元素的排序。 基数排序是一种借助多关键字的思想对单逻辑关键字进行排序方法。 本文目录 1️⃣样例演示2️⃣基数排序介绍3️⃣算法思想4️⃣代码示例5️⃣总结 1️⃣样例演示 基数排序的概念描述和思想比较难懂所以我们先来一个样例演示。然后再来细细品味基数排序的概念和思想。 我们对下面这个数组中的元素进行排序来进行演示 int arr[10] { 177 208 64 910 586 182 405 239 83 1 }我们按照最低位优先法发来进行排序可以看到数组中最高位为百位所以总共要进行三轮排序。 第一趟 第二趟 第三趟 可以看到每趟排序后回收数据时按照队列先进先出的思想来进行回收数据。 2️⃣基数排序介绍 基数排序Radix Sort是一种非比较排序算法它将待排序的元素按照位数从低位到高位从高位到低位也可以依次进行排序。本文按照从低位到高位为例进行演示。 3️⃣算法思想 基数排序的算法思想可以概括为以下几个步骤 1.确定待排序元素的最高位数即最大位数首先需要确定待排序元素中的最大值并计算出它的位数这决定了排序过程需要进行多少轮。 2.按照最低有效位进行一次稳定的排序从最低位开始将待排序元素按照最低有效位的值进行稳定排序可以使用计数排序或桶排序等算法实现。排序后元素相对于最低位来说是有序的。 3.按照次低有效位进行稳定排序将上一轮排序得到的有序序列按照次低有效位的值进行稳定排序。这样在当前位和低位均已有序的前提下排序后整个序列相对于当前位来说是有序的。 4.重复执行步骤3直到按照最高位进行排序依次对每一位进行稳定排序直到按照最高位排序完成。最终得到的序列即为完全有序的结果。 4️⃣代码示例 #includeiostream #includequeue using namespace std;#define RADIX 10 #define K 3 //排序3轮queueint Q[RADIX];int getkey(int value, int k) {int key 0;while (k 0){key value % 10;value / 10;k--;}return key; }void distribute(int arr[], int left, int right,int k) {for (int i left; i right; i){int key getkey(arr[i], k);Q[key].push(arr[i]);} }void collect(int arr[]) {int k 0;for (int i 0; i RADIX; i){while (!Q[i].empty()){arr[k] Q[i].front();Q[i].pop();}} } void ridixsort(int arr[], int left, int right) {for (int i 0; i K; i){//分发数据distribute(arr, left, right, i);//回收数据collect(arr);}}int main() {int arr[] { 177 ,208 ,64, 910 ,586, 182, 405, 239, 83, 1 };int n sizeof(arr) / sizeof(arr[0]);for (int i 0; i n; i){printf(%d , arr[i]);}printf(\n);ridixsort(arr, 0, n);for (int i 0; i n; i){printf(%d , arr[i]);}printf(\n);return 0; }运行结果如下 5️⃣总结 关于基数排序的几大要点总结一下 1.基数排序是一种非比较排序算法通过将待排序的元素按照位数进行拆分并依次对每一位进行稳定的排序从而达到整体有序的效果。 2.基数排序的稳定性非常重要即在每一轮排序时保证相同位上值相等的元素的相对顺序不变。 3.确定待排序元素的最高位数这决定了排序过程需要进行多少轮。 4.对每一位依次进行稳定排序可以使用计数排序、桶排序等方法来实现。 5.基数排序的时间复杂度为O(dn)其中d为待排序元素的最大位数n为元素的个数。空间复杂度为O(n k)其中k为计数排序或桶排序中桶的个数。 6.基数排序适用于待排序元素位数相对较小且范围较小的情况但如果待排序元素的位数差异较大或者位数较多时性能可能受到影响。 7.基数排序是稳定的排序算法可以应用于对整数、字符串等类型的数据进行排序。
http://www.zqtcl.cn/news/363105/

相关文章:

  • 上海协会网站建设网站制作培训费用
  • 学会网站建设总结淮北市建市
  • 泉州开发网站的公司有哪些域名不用了需要注销吗
  • 重庆网站推广平台东莞整站优化火速公司
  • 商务网站建设综合实训网站推广效果怎么样
  • 成都品牌网站建设电话项目外包平台接活
  • 教育培训类网站模板上海有几个区最好
  • 公司网站维护怎么维护东莞网站建设it s
  • pc网站怎么做男科医院治疗一次2000元
  • 电子网站建设心得企业查询app排行榜
  • 杭州做网站的科技公司永川做网站的公司
  • 动物自己做的网站网站优化外包公司
  • 企业网站建设的三种方式并举例手机wap网站是什么
  • 做深圳门户网站起什么名字好建设网站对公司起什么作用是什么
  • 长春企业网站设计建设公司资质查询官网
  • 医疗网站前置审批查询免费网站建设可信赖
  • 摄影师个人网站模板宝坻集团网站建设
  • 比较多人用什么网站做推广wordpress数据库表管理系统
  • 网页开发和游戏开发东莞优化怎么做seo
  • 北京网站搭建开发高级网页设计教程
  • 北京南站是中高风险地区吗网站建设上机实验心得
  • 大学生做兼职的网站有哪些免费行情软件网站有哪些
  • 静安手机网站建设常见的网络营销方法及其效果
  • 怎么改版网站湖南长沙地图
  • 中卫网站推广公司如何自创app软件
  • 无棣网站建设电子商务网站设计原理书籍
  • 做t-shirt素材网站企业网站建设结论
  • 唐山公司做网站查询建筑资质的网站
  • 邯郸的网站建设网站正能量入口
  • 网站导航栏最多可以做几个宝安网站设计排名