第八章 排序 十、基数排序

news2024/10/6 10:41:37

一、定义

  1. 基数排序(Radix Sort)是一种非比较排序算法,它将待排序元素按照其数值的各位数字(或字母)来排序。
  2. 该算法的基本思想是将整数按照位数切分成不同的数字,然后根据每个位数上的数字进行排序。
  3. 与其他排序算法相比,基数排序的时间复杂度为 O(d*n),其中 d 表示位数,n 表示待排序元素个数。
  4. 在实际应用中,基数排序通常采用桶排序来实现,因此它也被称为桶排序的一种扩展,并且通常被用来对整数排序,而不是字符串等其他类型的数据。

二、例子

1、我们有如下序列,我们要将它进行基数排序

2、把所有数字按个位数分配

3、由于我们要得到一个递减的序列,所以我们以个位进行一次收集

从右到左,从上到下,得到一个以个位数递减的序列

4、基于以个位数递减的序列,我们再以十位进行分配

由于第一次进行的个位数的收集,所以这一次收集是个位数更大的先入队(在同一队中)

5、以十位数进行收集

6、以百位数进行分配

7、以百位数进行收集,得到最终序列

三、算法效率分析

四、稳定性

稳定

五、应用

六、总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1069316.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一招教你下载网页里的音乐或资源文件

传送门: 音乐鉴赏 1.搜到歌曲后,先试听 2.F12打开浏览器开发者工具,选network,勾选media 3.把代码复制下来 如果你是Windows系统:鼠标对准该文件,右键,复制,以 PowerShell 格式复制 打开powe…

文化主题公园旅游景点3d全景VR交互体验加深了他们对历史文化的认知和印象

如今,沉浸式体验被广泛应用于文旅行业,尤其是在旅游演艺活动中。在许多城市,沉浸式旅游演艺活动已成为游客“必打卡”项目之一。因其独特体验和强互动性,这类演艺活动不仅吸引了外地游客,也吸引了本地观众。 随着信息化…

HTTP的基本格式

HTTP/HTTPS HTTPhttp的协议格式 HTTP 应用层,一方面是需要自定义协议,一方面也会用到一些现成的协议. HTTP协议,就是最常用到的应用层协议. 使用浏览器,打开网站,使用手机app,加载数据,这些过程大概率都是HTTP来支持的 HTTP是一个超文本传输协议, 文本>字符串 超文本>除…

boost在不同平台下的编译(win、arm)

首先下载boost源码 下载完成之后解压 前提需要自行安装gcc等工具 window ./bootstrap.sh ./b2 ./b2 installarm (linux) sudo ./bootstrap.sh sudo ./b2 cxxflags-fPIC cflags-fPIC linkstatic -a threadingmulti sudo ./b2 installx86 (linux) su…

2023年软件测试之功能测试(完整版)

一、测试项目启动与研读需求文档 (一) 组建测试团队 1、测试团队中的角色 2、测试团队的基本责任 尽早地发现软件程序、系统或产品中所有的问题。 督促和协助开发人员尽快地解决程序中的缺陷。 帮助项目管理人员制定合理的开发和测试计划。 对缺陷进…

【Linux】 grep命令使用

grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。 grep命令 -Linux手册页 语法 grep [选项] pattern [files] ls命令常用选项及作用 执行令 grep --help 执行命令结果 参数 -i:忽略大小写进行匹配。-v:反…

产品经理需要掌握哪些产品专业知识?

作为产品经理,最重要的是洞察客户的需求、理解客户的需求、掌握客户的需求,所以,第一件事情就是要有清晰的战略方向,我们到底梦想是什么?要做什么?能做什么?在哪儿做?谁负责去做&…

数据结构与算法(持续更新)

线性表 单链表 单链表的定义 由于顺序表的插入删除操作需要移动大量的元素,影响了运行效率,因此引入了线性表的链式存储——单链表。单链表通过一组任意的存储单元来存储线性表中的数据元素,不需要使用地址连续的存储单元,因此它…

容易被忽视的CNN模型的感受野及其计算

感受野可能是卷积神经网络中最重要的概念之一,在学术中也被广泛关注。几乎所有的目标检测方法都围绕感受野来设计其模型结构。这篇文章通过可视化的方法来表达感受野的信息,并且提供一用于计算任何CNN网络每一层感受野的程序。 对于CNN相关的基础知识&a…

8 财政收入预测分析

第8章 财政收入预测分析 8.1 了解财政收入预测的背景与方法8.1.1 分析财政收入预测背景1、财政收入简介和需求2、财政收入预测数据基础情况3、财政收入预测分析目标 8.1.2 了解财政收入预测的方法8.1.3 熟悉财政收入预测的步骤与流程 8.2 分析财政收入数据特征的相关性8.2.1 了…

虚拟机模拟部署服务器

1、下载安装vmware 15 (win7最高支持版) 2、下载安装CentOS 配置2核2g(最少)磁盘100g(不会实际占有)选择时区配置分区 https://blog.csdn.net/qq_35363507/article/details/127390889 (/boot …

MPLS VPN 配置

二 、知识点 MPLS VPN网络一般由运营商搭建,用于向不同的客户提供VPN服务,使得用户的路由和数据能够通过该网络进行传递,且不同的用户之间的路由和数据完全隔离,互不影响。MPLS VPN控制层面:通过VRF和RD隔离不同用户的…

matplotlib制图进阶版

需求:两个产品销量的可视化折线图 1、使用pandas读取数据 2、生成销售数量的折线图

深度图转化为点云

import numpy as np import cv2# 加载RGB图像和深度图像 rgb_image cv2.imread(rF:\Datasets\data\nyu2_test\00000_colors.png) # 假设你有一张RGB图像 depth_image cv2.imread(rF:\Datasets\data\nyu2_test\00000_depth.png, cv2.IMREAD_GRAYSCALE) # 假设你有一张灰度深…

计算机网络笔记 第三章数据链路层

3.1 数据链路层概述 数据链路层在网络体系结构中所处的地位 链路、数据链路和帧 链路 链路(Link)是指从一个节点到相邻节点的一段物理线路(有线或无线),而中间没有任何其他的交换节点。 数据链路 (Data Link&#…

Python爬虫技术系列-03requests库案例-完善

Python爬虫技术系列-03requests库案例 参考1 Requests基本使用1.1 Requests库安装与使用1.1.1 Requests库安装1.1.2 Rrequests库介绍1.1.3 使用Requests一般分为三个步骤1.1.4 requests的公共方法 2 Requests库使用案例2.1 GET请求携带参数和headers2.2 POST请求,写…

no Go files in ...问题

golang项目,当我们微服务分模块开发时,习惯把main.go放在cmd目录下分模块放置,此时,我们在项目根目录下执行go test . 或go build . 时会报错“no Go files in ...”, 这是因为在.目录下找不到go程序,或者找不到程序入…

如何提升爬虫IP使用效率?精打细算的方法分享

在进行爬虫数据采集时,爬虫IP是不可或缺的工具。然而,爬虫IP的费用可能是一个爬虫项目的重要开支之一。为了帮助您节省爬虫IP经费,本文将分享一些经济高效的方法,让您在使用爬虫IP时更加节约成本,提高经济效益。 一、优…

Games104现代游戏引擎笔记 基础ai

游戏AI navigation(导航系统) 地图的表达形式, 寻路,路径优化 Map representation: 1.可行走区域(物理碰撞,跳跃距离,攀爬高度) 2.表达形式:waypoint networks(路点网络图)&#…

阿里云Alibaba Cloud Linux操作系统详细介绍_镜像常见问题解答

阿里云服务器操作系统Alibaba Cloud Linux镜像怎么样?可以代替CentOS吗?Alibaba Cloud Linux兼容性如何?有人维护吗?漏洞可以修复吗?Alibaba Cloud Linux完全兼容CentOS,并由阿里云官方免费提供长期维护。 …