zoukankan      html  css  js  c++  java
  • 三个数字排序问题,按照从小到大的思路排除结果

     

    题目:输入三个整数 x,y,z,请把这三个数由小到大输出。
    程序分析:我们想办法把最小的数放到 x 上,先将 x 与 y 进行比较,如果 x>y 则将 x 与 y 的值进行交换,
    然后再用 x 与 z 进行比较,如果 x>z 则将 x 与 z 的值进行交换,这样能使 x 最小

    package SuanFa;
    
    public class Demo15 {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            function(9, 5, 3);
    
        }
        public static void function(int x ,int y,int z) {
            if (x>y) {
                int value=0;
                value=x;
                x=y;
                y=value;//置换x y 的值 并且找出 x y 之间最小的数x
            }
            if (x>z) {
                int value1=0;
                value1=x;
                x=z;
                z=value1;// 置换 x z的值 保证 x z之间最小值  x
            }
            //至此找到的最小数x ,类比方法 同样找出 yz 之间的最小值
            if (y>z) {
                int value2=0;
                value2=y;
                y=z;
                z=value2;//y  z 之间置换数值 ,保证y 次小
            }
            //多次执行if 直至满足条件后  打印输出x y z
            System.err.println(x+" "+y+" "+z);
            
            
        }
    
    }

    这里我是利用if哦多次执行特点,只要满足if 提供的条件,按照顺序可以执行多个If 从而满足条件

    x先于y z比较,分别找出二者之间的最小值,然后替换数值,需要重新定义一个新的变量来作为接受值

    然后根据相同的方法找到yz 之间最小值 最后打印即可

  • 相关阅读:
    LeetCode——Basic Calculator
    LeetCode——Sqrt(x)
    LeetCode——Binary Search Tree Iterator
    LeetCode——Search for a Range
    LeetCode——pow(x, n)
    LeetCode——Single Number II
    LeetCode——Summary Ranges
    LeetCode——Largest Number
    LeetCode——Kth Largest Element in an Array
    LeetCode——Implement Stack using Queues
  • 原文地址:https://www.cnblogs.com/doudou2018/p/9439746.html
Copyright © 2011-2022 走看看