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

做网站公司怎么推销苏州园科生态建设集团网站

做网站公司怎么推销,苏州园科生态建设集团网站,西地那非片说明书,好看的个人博客主页基数排序(Radix Sort)是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数进行比较。具体来说,基数排序有两种方法: 最低位优先(LSD, Least Significant Digit f…

基数排序(Radix Sort)是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数进行比较。具体来说,基数排序有两种方法:

  1. 最低位优先(LSD, Least Significant Digit first):从最低位开始,向最高位进行排序。
  2. 最高位优先(MSD, Most Significant Digit first):通常用于字符串的排序,从最高位开始,向最低位进行排序,且常使用递归实现。

在这里,我们将以最低位优先(LSD)的方式实现一个针对非负整数的基数排序。为了简化,我们假设所有整数都是非负的,并且它们的位数都是相同的(或者我们可以对它们进行补零以使得位数相同)。

以下是基数排序的C#实现:

using System;
using System.Collections.Generic;class Program
{static void Main(string[] args){int[] arr = { 170, 45, 75, 90, 802, 24, 2, 66 };// 调用基数排序RadixSort(arr);
​Console.WriteLine("Sorted array: ");foreach (int num in arr){Console.Write(num + " ");}Console.WriteLine();}// 基数排序方法static void RadixSort(int[] arr){// 找到数组中的最大值以确定最大位数int max = arr[0];for (int i = 1; i < arr.Length; i++){if (arr[i] > max)max = arr[i];}// 对每个位数进行排序for (int exp = 1; max / exp > 0; exp *= 10){CountingSortForRadix(arr, exp);}}// 基数排序中的计数排序,用于按当前位数排序static void CountingSortForRadix(int[] arr, int exp){int n = arr.Length;int[] output = new int[n]; // 输出数组    int[] count = new int[10]; // 计数数组,0-9// 存储当前位的值for (var i = 0; i < n; i++)count[(arr[i] / exp) % 10]++;// 更改count[i],使其包含实际的位置信息for (var i = 1; i < 10; i++)count[i] += count[i - 1];// 构建输出数组for (var i = n - 1; i >= 0; i--){output[count[(arr[i] / exp) % 10] - 1] = arr[i];count[(arr[i] / exp) % 10]--;}// 将排序后的数据复制回原数组for (var i = 0; i < n; i++)arr[i] = output[i];}
}

在这个实现中,RadixSort 方法首先找到数组中的最大值,以确定需要处理的最大位数。然后,它使用一个循环,每次循环对当前位(从最低位开始)进行排序。

CountingSortForRadix 方法是一个辅助方法,它使用计数排序来对数组中的元素按当前位进行排序。这个方法首先计算每个数字在当前位上的值(通过除以当前位的位权并取模10得到),然后使用一个计数数组来记录每个值出现的次数。接下来,它修改计数数组,使得每个位置包含小于或等于当前值的元素应该占据的位置。最后,它使用这些信息来构建排序后的数组,并将其复制回原数组。

注意,这个实现假设了所有数字都是非负的,并且它们的位数可能不同(通过最高位之前的0来隐含地表示较短的数字)。如果输入包含负数,或者你需要对字符串进行排序,你可能需要修改这个算法以适应这些情况。

http://www.yayakq.cn/news/637507/

相关文章:

  • 企业官方网站建设教程男男做的视频网站好
  • 免费下载素材的设计网站淘宝搜索指数
  • h5手机网站建设哪家好wordpress怎么写时间轴
  • profile wordpress网站链接优化
  • 做网站选择系统vs2012网站开发环境
  • 莱芜百度网站建设杭州建设局
  • 优秀网站的必备要素ps网站交互设计
  • 东莞英文网站建设网站维护与建设合同
  • 专业做网站公司排名网站优化排名方法
  • 个人网站 jsp 域名空间表白代码
  • 手机算命网站建设电子表格做网站框架
  • 贵阳做网站网站建设题库及答案
  • 做门窗安装去哪些网站找生意如何制作网站连接数据库
  • 网站规划与建设 pptwordpress geek theme
  • 龙岗网站建设多少钱甘肃手机版建站系统信息
  • 做网站网站代理赚钱吗同性性做视频网站
  • 中国建设银行在网站怎么签约建设一个网站需要哪些
  • wordpress 信息流 主题浙江seo博客
  • 个人网站设计htmlwordpress离线编辑器
  • 招个网站建设维护免费制作企业网站平台
  • 做苗木生意上什么网站济南网站设计公司推荐
  • wordpress空白主题青岛神马排名优化
  • 备案网站建设方案书asp.net 网站管理工具 安全
  • 河南平顶山网站建设与管理专业wordpress狮子歌歌
  • 聊城网站建设工作室在线制作电子公章生成器
  • 丽江北京网站建设微信小程序设计网站
  • 实名认证域名可以做电影网站吗国外免费服务器提供
  • 上海企业网站优化多少钱赤峰网站设计
  • 做论坛和做网站有什么区别h5网站如何做排名
  • 如何做教育公司网站网站 二维码的作用