본문 바로가기

자료구조

(11)
큐 구현하기 문제이 문제에서는 큐를 구현한다. 큐는 다음 세 개의 연산을 지원한다.Push X : 큐에 정수 X를 push한다. 만약 rear 포인터가 더 이상 뒤로 갈 수 없다면, “Overflow”를 출력한다.Pop : 큐에서 정수 하나를 pop한다. 만약 front 포인터가 더 이상 뒤로 갈 수 없다면, “Underflow”를 출력한다.Front : 큐의 front에 있는 정수를 출력한다. 만약 큐가 비어있다면 “NULL”을 출력한다.크기가 n인 큐에 m개의 연산을 하는 프로그램을 작성하시오. 입력의 편의를 위해서 Push는 “1”, Pop은 “2”, Top은 “3”으로 표현한다. 입력첫째 줄에 큐의 크기 n, 연산의 개수 m이 주어진다. ( 1 ≤ n ≤ 100, 1 ≤ m ≤ 1,000 ) 두 번째 줄부터 ..
큐 ( Queue ) 큐 (queue) 는 한쪽 끝에서는 원소가 추가되고, 나머지 한쪽 끝에서는 원소가 삭제되는 선형 리스트이다. push 연산을 수행하게 되면 rear 에 원소가 한개씩 쌓인다. pop 연산을 수행하게 되면 front 에서 원소가 한개씩 삭제 된다. 먼저 들어간 원소가 먼저 나오기 때문에 FIFO 라고 한다. 큐의 size 만큼 원소가 꽉찼는데 push연산을 하면 Queue Overflow 가 발생한다. 큐가 비어있는데 pop 연산을 하게 되면 Queue Underflow가 발생한다. 출처 : AlgorithmLABS
스택 (Stack) 스택(Stack)은 선형구조로 삽입(push)와 삭제(pop)연산이 한쪽 끝에서만 수행되는 자료구조 이다. 마지막에 들어온 원소가 가장먼저 삭제 되므로 Last In First Out 또는 First In Last Out 이라고 불리고, 줄여서 LIFO 또는 FILO 라고 불린다.원소를 삽입하는 연산을 push 라고 한다.원소를 삭제하는 연산을 pop 이라고 한다.만약에 스택의 사이즈만큼 원소가 꽉차있는데, 원소를 꽉찬 스택에 더 넣으려고 하면 Stack Overflow가 발생한다.스택에 있는 모든 원소들을 삭제 시켰는데, 또 삭제 연산을 하게 되면 스택이 비어있기 때문에 Stack Underflow가 발생한다.연습문제를 한번 풀어보자.출처 : AlgorithmLABS 문제이 문제에서는 스택을 구현한다...