java radix sort_用于Radix Sort的Java程序

基数排序是一种排序技术,可根据每个元素(或数字)中的每个数字对元素进行排序。基于一个位数(也称为最低有效位数)和十位数(也称为最高有效位数),数百个位数等等,对元素进行排序。

示例

以下是Java中Radix Sort的示例-import java.util.*;

public class my_radix_sorting {

static int get_max_val(int my_arr[], int arr_len) {

int max_val = my_arr[0];

for (int i = 1; i 

if (my_arr[i] > max_val)

max_val = my_arr[i];

return max_val;

}

static void countSort(int my_arr[], int arr_len, int exp) {

int result[] = new int[arr_len];

int i;

int count[] = new int[10];

Arrays.fill(count,0);

for (i = 0; i 

count[ (my_arr[i]/exp)%10 ]++;

for (i = 1; i 

count[i] += count[i - 1];

for (i = arr_len - 1; i >= 0; i--) {

result[count[ (my_arr[i]/exp)%10 ] - 1] = my_arr[i];

count[ (my_arr[i]/exp)%10 ]--;

}

for (i = 0; i 

my_arr[i] = result[i];

}

static void radix_sort(int my_arr[], int arr_len) {

int m = get_max_val(my_arr, arr_len);

for (int exp = 1; m/exp > 0; exp *= 10)

countSort(my_arr, arr_len, exp);

}

public static void main (String[] args) {

int my_arr[] = {56, 78, 102, 345, 67, 90, 102, 45, 78};

int arr_len = my_arr.length;

System.out.println("The array after performing radix sort is ");

radix_sort(my_arr, arr_len);

for (int i=0; i

System.out.print(my_arr[i]+" ");

}

}

输出结果The array after performing radix sort is

45 56 67 78 78 90 102 102 345

说明

在基数排序中,每个元素均基于其数字进行排序,其中每个元素中的最低有效数字首先被排序,而最高有效数字最后被排序。它使用计数排序作为子功能来执行其排序功能。

给定一个元素数组,第一步是根据最低有效位的数字(即一个位)对元素进行排序。接下来,根据十位数字对数组中的元素进行排序。然后,根据数百位数字对元素进行排序,依此类推。这是借助“ get_max_val”功能完成的。在main函数中,定义了数组,并将该数组作为参数传递给“ radix_sort”函数。

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

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

相关文章

OpenStack 如何跨版本升级

作者 | 孙琦来源 | 万博智云OpenStack是中国私有云的事实标准根据三方统计报告,2020年,中国私有云市场规模达到951.8亿元,同比增长42.1%,私有云在国内IaaS市场占比约45%。私有云提供商有望在云计算市场持续高速发展进程中持续受益…

流计算引擎数据一致性的本质

简介: 本篇文章从流计算的本质出发,重点分析流计算领域中数据处理的一致性问题,同时对一致性问题进行简单的形式化定义,提供一个一窥当下流计算引擎发展脉络的视角,让大家对流计算引擎的认识更为深入,为可能…

java 的io流需要学吗_Java的IO流之字节流,必须要学得内容,你会嘛?

原标题:Java的IO流之字节流,必须要学得内容,你会嘛?伙伴们~端午节过的如何呀~有没有很开心呀~假期已过咱们继续开动了IO流先来认识一下IO流:IO流用来处理设备之间的数据传输,Java对数据的操作是通过流的方式…

为什么大家都在抵制用定时任务实现「关闭超时订单」功能?

作者 | 阿Q来源 | 阿Q说代码前几天领导突然宣布几年前停用的电商项目又重新启动了,让我把代码重构下进行升级。让我最深恶痛觉的就是里边竟然用定时任务实现了“关闭超时订单”的功能,现在想来,哭笑不得。我们先分析一波为什么大家都在抵制用…

面对疾风吧,如何搭建高协同的精准告警体系?

简介: 想要实现AiOps,智能告警少不了。Arms 告警运维中心让面向告警的组织协同更加便捷高效! 作者|九辩 世上没有一个系统是百分之百尽善尽美的。如果想要保证可用性,那么技术团队就得对服务的各种状态了如指掌&…

KubeMeet|聊聊新锐开源项目与云原生新的价值聚焦点

简介: 10 月 16 日上海,OAM/KubeVela、OpenKruise、OCM 三大开源项目的社区负责人、核心贡献者和企业用户将齐聚 KubeMeet,和现场 100 名开发者聊聊新的技术环境和企业需求下,有关“云原生应用管理”的那些事儿。 随着云原生关注…

java用for语句实现菱形_编写Java程序,应用for循环打印菱形、三角形

//输出三角形//左下for(int m 1; m < 10; m){for (int n 1; n < m; n){System.out.print("*");}System.out.println();}//左上(1)for(int m 1; m < 10; m){for (int n 10; n > m; n--){System.out.print("*");}System.out.println();}//左…

Redis 究竟适不适合当队列来用?

‍作者 | Magic Kaito来源 | 水滴与银弹我经常听到很多人讨论&#xff0c;关于「把 Redis 当作队列来用是否合适」的问题。有些人表示赞成&#xff0c;他们认为 Redis 很轻量&#xff0c;用作队列很方便。也些人则反对&#xff0c;认为 Redis 会「丢」数据&#xff0c;最好还是…

EDA 事件驱动架构与 EventBridge 二三事

简介&#xff1a; 事件驱动型架构 (EDA) 方兴未艾&#xff0c;作为一种 Serverless 化的应用概念对云原生架构具有着深远影响。当我们讨论到一个具体架构时&#xff0c;首当其冲的是它的发展是否具有技术先进性。这里从我们熟悉的 MVC 架构&#xff0c;SOA 架构谈起&#xff0c…

linux删除mysql临时文件_linux下mysql自动备份数据库与自动删除临时文件_MySQL

bitsCN.comlinux下mysql自动备份数据库与自动删除临时文件一、每日23:00自动删除临时文件首先查看一下crontab的任务列表&#xff1a;crontab -l然后新建&#xff1a;crontab -e添加一行&#xff1a;00 03 * * * rm -rf /www/cmstest/my120/public/scripts/jpgraph/*保存退出。…

如果被问到分布式锁,应该怎样回答?

作者 | tech-bus.七十一来源 | 程序员巴士说到锁&#xff0c;在平时的工作中&#xff0c;主要是使用synchronized关键字&#xff0c;或者相关的一些类库来实现同步&#xff0c;但这都是基于单机应用而言的&#xff0c;当我们的应用多实例部署时&#xff0c;这时候就需要用到分布…

工业视觉智能实战经验之IVI算法框架2.0

简介&#xff1a; 工业视觉智能团队在交付了多个工业视觉智能质检项目后&#xff0c;发现了工业视觉智能的共性问题和解法&#xff0c;打造了工业视觉智能平台&#xff0c;通过平台的方式积累和提升工业视觉的通用能力。在平台建设上最核心的能力是算法能力。算法能力包括不断增…

技术干货 | jsAPI 方式下的导航栏的动态化修改

简介&#xff1a; 操作指导&#xff1a;通过 jsAPI 实现导航栏的动态修改。 很多开发同学在接入 H5 容器后都会对容器的导航栏进行深度定制&#xff0c;除了 Native 的定制化之外&#xff0c;还有很多场景是使用到 jsAPI 的方式&#xff0c;通过 jsAPI 实现导航栏的动态修改。 …

Gartner:企业机构需重新定义网络安全领导者角色

编辑 | 宋慧 供稿 | Gartner 根据Gartner的最新调查&#xff0c;由于网络风险责任已被转移到IT以外&#xff0c;并且日益分散的生态系统导致网络安全领导者正在失去对决策的直接控制权&#xff0c;企业机构需要重新定义网络安全领导者的角色。 如今&#xff0c;安全和风险管理…

成本直降50%,下一代网关震撼发布

简介&#xff1a; 在容器和K8s主导的云原生时代&#xff0c;网关的新形态变得逐渐清晰&#xff0c;阿里内部也孵化出了下一代的网关产品 - 云原生网关&#xff0c;已在支付宝、淘宝、优酷、口碑等业务成功上线&#xff0c;并且经历了2020双11大促海量请求的考验&#xff0c;目前…

备战“双11”,阿里云为企业提供一站式资源保障服务

简介&#xff1a; 阿里云弹性计算将上线资源保障服务&#xff0c;通过智能化资源诊断、推荐、资源预定及授权候补为用户提供一站式自助化资源保障服务&#xff0c;兼顾灵活&#xff0c;经济的同时还能获得时刻的确定性保障&#xff0c;为业务顺畅前行保驾护航。 报名体验资源保…

Mendix发布2022年制造业七大趋势:智能工厂、超级自动化

编辑 | 宋慧 供稿 | Mendix 原本备受期待的2020新年代&#xff0c;在某些国家并没有出现我们所期望的华丽开局&#xff0c;制造业企业没有看到经济增长和繁荣&#xff0c;反而因为新冠疫情带来的消极影响一直苦苦支撑&#xff0c;尤其是供应链不稳定、运输问题、工人短缺和通货…

mysql不支持union_MySQL中Union子句不支持order by的解决方法

本文实例讲述了MySQL中Union子句不支持order by的解决方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;我对DB知之甚少&#xff0c;这问题只在MySQL遇到&#xff0c;不知道别的DBMS是不是也如此。问题是这样的&#xff0c;我打算在一个表里获得与某一行记录相邻的两…

快速上手 Serverless | 入门第一课

简介&#xff1a; 本文从云计算抛砖引玉&#xff0c;详解 Serverless 的典型应用场景和一些产品介绍。 一、 从云计算到 Serverless 自世界上第一台通用计算机 ENIAC (图左)诞生以来&#xff0c;计算机科学与技术的发展就从未停止过前进的脚步。2003年-2006年&#xff0c;谷歌…

钉钉宜搭邵磊:钉钉宜搭低代码加速业务互联 让改变发生

简介&#xff1a; 近日&#xff0c;在2021“低代码技术发展与应用线上研讨会”上&#xff0c;钉钉宜搭产品总监邵磊带来了“钉钉宜搭低代码加速业务互联 让改变发生”的主题演讲&#xff0c;详细介绍了钉钉宜搭低代码产品的六大互联能力。 宜搭是今年1月份正式上线到钉钉&…