zoukankan      html  css  js  c++  java
  • 在一个数组里面找出最小的两个数

    找出数组中最小的两个数,在一次遍历中就可以实现,m1来表示最小的值,m2表示出现次小的值

    代码如下:

    import java.util.Scanner;
    
    public class FindTwoLow {
        public static void main(String []args){
    
            //find  two  lowest
            int[] arr={5,4,6,3,9,12,35,42,18,29,30};
            int m1,m2;//存储两个最小值
            m1=arr[0];
            m2=arr[0];
            for(int i=0;i<arr.length;i++){
                if(arr[i]<m1){
                    m2=m1;
                    m1=arr[i];
                }else if(arr[i]<m2){
                    m2=arr[i];
                }
            }
            System.out.println(m1+","+m2);
    
        }
    
    
    }

    思路:第一个判断用来保存最小值,第二个判断用来保存次小值,当出现比m1小的数的时候,把之前m1的值给m2,更新m1;

    当第一个条件不满足,才会去判断第二个条件,为的是怕当前arr[i]比次小值小,所以对其判断下。如此一来 当数组遍历一遍后,就找到了最小值 m1次小值m2;

  • 相关阅读:
    KMP算法
    Python 正则表达式
    Python 装饰器
    C/C++ 之输入输出
    PAT(Basic Level)--个位数统计
    Java 接口与抽象类
    Java集合-01概述
    数据结构--红黑树
    数据结构--(AVL)平衡二叉树
    数据结构--二叉搜索树
  • 原文地址:https://www.cnblogs.com/wanglingdeboke/p/9439454.html
Copyright © 2011-2022 走看看