新闻详情

新闻详情

首页 / 资讯中心 / 详情

洛谷题--三位数排序

发布时间:2026/9/8 15:25:07来源:尧图网络
洛谷题--三位数排序
题目描述给出三个整数 a,b,c(0≤a,b,c≤100)要求把这三位整数从小到大排序。输入格式输入三个整数 a,b,c以空格隔开。输出格式输出一行三个整数表示从小到大排序后的结果。初始版本import java.util.Scanner; public class Main{ public static void main(String[] arg){ Scanner sc new Scanner(System.in); int a sc.nextInt(); int b sc.nextInt(); int c sc.nextInt(); if(ab){ if(bc){ System.out.println(a b c); }else{ if(ac){ System.out.println(a c b); }else{ System.out.println(c a b); } } }else{ if(bc){ System.out.println(c b a); }else{ if(ac){ System.out.println(b c a); }else{ System.out.println(b a c); } } } } }存在问题虽然逻辑正确但代码繁琐可读性差优化方案方案一依然只用if,简化版本不再写多层嵌套用临时变量交换保证 a ≤ b ≤ c代码短、逻辑直白import java.util.Scanner; public class Main{ public static void main(String[] arg){ Scanner sc new Scanner(System.in); int a sc.nextInt(); int b sc.nextInt(); int c sc.nextInt(); int t; // 如果a比b大交换a,b if (a b) { t a; a b; b t; } // 如果a比c大交换a,c → a一定是最小值 if (a c) { t a; a c; c t; } // 最后保证b ≤ c if (b c) { t b; b c; c t; } System.out.println(a b c); } }✅ 优点没有地狱式嵌套 if阅读轻松改动一个数字也不容易出错完全只用 if 判断符合分支结构作业要求方案二数组 工具类排序刷题、竞赛最优解把 3 个数放进数组调用 Java自带排序函数(局限是只能从小到大排序代码最少import java.util.Scanner; import java.util.Arrays; public class Main{ public static void main(String[] arg){ Scanner sc new Scanner(System.in); int[] nums {sc.nextInt(), sc.nextInt(), sc.nextInt()}; Arrays.sort(nums); System.out.println(nums[0] nums[1] nums[2]); } }✅ 优点以后如果不是 3 个数是 100 个数几乎不用改代码逻辑干净不会写错判断分支方案三Math.max/ Math.min 纯计算版趣味写法不用交换变量直接算出最小、中间、最大值import java.util.Scanner; public class Main{ public static void main(String[] arg){ Scanner sc new Scanner(System.in); int a sc.nextInt(); int b sc.nextInt(); int c sc.nextInt(); int min Math.min(Math.min(a,b),c); int max Math.max(Math.max(a,b),c); int mid a b c - min - max; System.out.println(min mid max); } }原理三个数总和减去最大值、最小值剩下的就是中间值非常巧妙
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

基于SpringBoot的高校机动车认证信息管理系统(毕业设计项目源码+文档) 2026/9/8 18:13:45

基于SpringBoot的高校机动车认证信息管理系统(毕业设计项目源码+文档)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

阅读更多 →
单片机毕业设计-基于 STM32 单片机的火灾防盗一体化环境监测系统设计 基于 STM32 单片机的多模式环境感知与设备联动控制系统设计(012807) 2026/9/8 18:13:45

单片机毕业设计-基于 STM32 单片机的火灾防盗一体化环境监测系统设计 基于 STM32 单片机的多模式环境感知与设备联动控制系统设计(012807)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

阅读更多 →
基于SpringBoot的服装销售管理系统(毕业设计项目源码+文档) 2026/9/8 18:13:45

基于SpringBoot的服装销售管理系统(毕业设计项目源码+文档)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

阅读更多 →
2026年山东省【信息学体验营】复赛真题及题解T2:小兔子爬楼梯 2026/9/8 18:13:45

2026年山东省【信息学体验营】复赛真题及题解T2:小兔子爬楼梯

2026年山东省【信息学体验营】复赛真题及题解T2:小兔子爬楼梯 题目描述 森林学校里有一座 nnn 级的台阶,小兔子要跳上去。 它每一次跳跃,可以选择跳 111 级、222 级、……、mmm 级(每次跳的级数必须是整数,且在 111…

阅读更多 →
2026年山东省【信息学体验营】复赛真题及题解T1:星际密信 2026/9/8 18:13:45

2026年山东省【信息学体验营】复赛真题及题解T1:星际密信

2026年山东省【信息学体验营】复赛真题及题解T1:星际密信 题目描述 在遥远的星系中,外星人使用一种简单的加密方式传递信息。 已知外星人的信息全部都是由大写英文字母(A,…,Z)和数字字符(0&…

阅读更多 →
3 步跑通 IntelliJ IDEA 社区版源码 2026/9/8 18:10:44

3 步跑通 IntelliJ IDEA 社区版源码

3 步跑通 IntelliJ IDEA 社区版源码 【免费下载链接】intellij-community IntelliJ IDEA & IntelliJ Platform 项目地址: https://gitcode.com/GitHub_Trending/in/intellij-community 这是 JetBrains IDE 家族的开源仓库:你日常使用的 IntelliJ IDEA 社…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞