U E D R , A S I H C RSS

중위수구하기/문보창

소감


코드

Number.java

~cpp 
import java.util.Scanner;

public class Number 
{
	final int MAX_SIZE = 100000;
	final int SENTINEL_NUM = -999;
	
	private int elements[];
	private int length;
	
	public Number()
	{
		elements = new int[MAX_SIZE];
		length = 0;		
	}
	
	public void inputNumber()
	{
		Scanner input = new Scanner(System.in);
		for (int i = 0; i < MAX_SIZE; i++)
		{
			elements[i] = input.nextInt();
			if (elements[i] == SENTINEL_NUM)
				break;
			else
				length++;
		}
	}
	
	public int findMidiumNumber()
	{
		sortElement(0, length);
		int mid = (int)Math.floor(0.5 * length + 0.5);
		return elements[mid - 1]; 
	}
	
	public void sortElement(int start, int end)
	{
		int min;
		for (int i = start; i < end - 1; i++)
		{
			min = i;
			for (int j = i + 1; j < end; j++)
			{
				if (elements[min] > elements[j])
					min = j;
			}
			swapElement(i, min);			
		}
	}
	
	public void swapElement(int i, int j)
	{
		int t = elements[i];
		elements[i] = elements[j];
		elements[j] = t;		
	}
}

~cpp TestNumber.java

~cpp 
public class testNumber 
{
	public static void main(String args[])
	{
		Number number = new Number();
		number.inputNumber();
		int midNum = number.findMidiumNumber();
		System.out.println(midNum);		
	}
}

나한테 할 말

  • 윽.. java도 모르겠다. 근데 자바는 파일을 여러 개 만들어야 하는건가요?
    C언어에서 파일을 여러개 만들 때 전역 변수를 쓰는 것..처럼. java도 가능한가요?--아영
  • 파일이름과 같은 클래스에 메인메소드만 있으뎐 됩니다.
----
중위수구하기 LittleAOI
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:31:09
Processing time 0.0110 sec