Programming/JAVA 알고리즘

최대값을 구하는 알고리즘(1)

달나라민군 2011. 1. 14. 09:15

충분히 작은 값을 최대값으로 정하고 하나씩 비교합니다.

1, 2, 6, 8, 3 이라는 숫자들이 있다고 가정했을시.

max = -99999 이라고 가정후

하나씩 max 변수와 비교 후 max 보다 크면 그 수를 max로 하고
아닌경우 그대로 두는 알고리즘 입니다. 가장많이 사용됩니다.

이 방법을 이용하여 숫자를 콤마로 구분한 문자열을 BufferedReader를 이용하여 표준입력으로
받아들여 StringTokenizer를 이용해 Parsing하고, 배열에 담은 후 최대값을 구하는 프로그램
예제입니다. (입력 문자열의 Delimeter는 (,)입니다.)

import java.io.*;
import java.util.*;

class Max1{
public static void main(String[] args) throws IOException{
   int max = -2147483648;
   int[] arry = new int[20];
   BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
   System.out.println("콤마(,)로 구분하여 숫자들을 입력하세요.");
   String digits=br.readLine();
   StringTokenizer st = new StringTokenizer(digits,",");
   for(int i=0;st.hasMoreElements();i++){
      arry[i] = Integer.parseInt(st.nextToken());
   }
   for(int i=0;i<array.length;i++){
      if(array[i]>max){
         max=array[i];
     }
   }
System.out.println("최대값은 : "+max);
}
}