三数排序java

public class ThreeNumberSort {

//方法1 sortNum1方法用三目运算的方法从小到大输出三个数
private static void sortNum1(int num1,int num2,int num3){
//定义变量用于存放最大值和最小值
int max;
int min;
max=(num1>=num2&&num1>=num3)?num1:(num2>num3?num2:num3);
min=(num1<=num2&&num1<=num3)?num1:(num2<=num3?num2:num3);
//打印输出结果
System.out.println("方法1:"+min+"  "+(num1+num2+num3-min-max)+"  "+max);
}
//方法2  用if条件的方法
private static void sortNum2(int num1,int num2,int num3){
//定义变量用于交换
int t;
if(num1>num2){
t=num1;
num1=num2;
num2=t;
}
if(num2>num3){
t=num2;
num2=num3;
num3=t;
}
if(num1>num2){
t=num1;
num1=num2;
num2=t;
}
//输出结果
System.out.println("方法2:"+num1+"  "+num2+"  "+num3);
}
//方法3例举
private static void sortNum3(int num1,int num2,int num3){
if(num1==num2&&num2==num3){
System.out.println("方法3:"+num1+" "+num2+" "+num3);
}else 
if(num1>=num2&&num2>=num3){
System.out.println("方法3:"+num3+" "+num2+" "+num1);
}else if(num2>num1&&num1>num3){
System.out.println("方法3:"+num3+" "+num1+" "+num2);
}else if(num2>=num3&&num3>=num1){
System.out.println("方法3:"+num1+" "+num3+" "+num2);
}else if(num3>num2&&num2>num1){
System.out.println("方法3:"+num1+" "+num2+" "+num3);
}else if(num3>num1&&num1>num2){
System.out.println("方法3:"+num2+" "+num1+" "+num3);
}else if(num1>num3&&num3>num2){
System.out.println("方法3:"+num2+" "+num3+" "+num1);
}
}


//方法4 
private static void sortNum4(int num1,int num2,int num3){
//定义存放最大最小
int min=num1;
int max=num2;
if(num1>=num2)max=num1;//num1与num2中大的一个给max再与num3比较如果num3大就给
if(max<=num3)max=num3;//max如果不大就为num1与num2的比较结果

if(num1>=num2)min=num2;//原理与寻找max相同
if(min>=num3)min=num3;
System.out.println("方法4:"+min+"  "+(num1+num2+num3-min-max)+"  "+max);
}
public static void main(String[] args){
//调用sortNum方法测试
sortNum1(3,2,1);
//调用方法2
sortNum2(3,2,1);
//调用方法3
sortNum3(3,2,1);
sortNum3(3,3,3);
    sortNum3(3,3,2);
    sortNum3(3,2,3);
  //调用方法4
    sortNum4(3,2,1);
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值