다형성: Polymorphism
·
Programming/Java
다형성 다형성이라는 말은 이번에 처음 들어봤지만 생각보다 이해하기 쉬웠다. 짧게 말하면 어떤 객체를 다른 객체로 선언할 수 있다는 것이다. Student bonbon = new Student(); Person bonbon = new Student(); 위처럼 객체를 Person 타입으로 선언했지만 Student로 초기화할 수 있다. 대박~ 그런데 다 되는 것은 아니다. ㄱ- 위키백과의 다형성 정의는 이렇다. 프로그램 언어의 다형성(多形性, polymorphism; 폴리모피즘)은 그 프로그래밍 언어의 자료형 체계의 성질을 나타내는 것으로, 프로그램 언어의 각 요소들(상수, 변수, 식, 오브젝트, 함수, 메소드 등)이 다양한 자료형(type)에 속하는 것이 허가되는 성질을 가리킨다. 반댓말은 단형성(mono..
[백준 1655] 가운데를 말해요, 우선순위 큐: Priority Queue, Heap. feat.JAVA
·
Programming/Algorithm
문제소개[문제]정수를 입력할 때마다 그때까지 입력된 정수 중 중앙값을 출력하는 문제다.우선순위 큐(Priority Queue)를 활용하여 풀어야 한다. 자료구조에 대한 이해가 덜 된 상태에서 문제를 푸느라 뻘짓을 많이 했지만 그만큼 배운게 많다. 자료구조 간단 정리자료구조반환데이터스택(Stack)제일 나중에 넣은 데이터(LIFO)큐(Queue)제일 처음 넣은 데이터(FIFO)우선순위 큐(Priority Queue)가장 우선순위가 높은 데이터 스택과 큐는 입력과 출력을 다루는 것이 간단해보이지만 우선순위 큐는 그렇지 않다. 우선순위와 관계없이 값을 입력하지만 우선순위가 가장 높은 값을 출력해야 한다. 따라서 값을 입력할 때 기존의 값들과 우선순위를 비교하는 연산이 필요하다. 이때 힙을 이용한다. 힙은 트..