7장 연습문제

1. 주변에서 LIFO 방식을 사용하는 스택의 예를 찾아 설명하시오.

예) 인간피라미드 쌓기.

⇒ 밑에서부터 한단씩 위로 피라미드를 쌓고, 피라미드를 해체할 때에는 위에서부터 아래로 한단씩 차례로 해체하지 않으면 사고가 난다.

2. 스택(Stack)의 응용에서 다음의 수식을 중위 표기법으로 표기했을 때 옳은 것은? (2004년 기출문제)

( ( ( A / B ) + C ) - ( D * E ) )

가 . A / B + C - D * E	나. AB / C + DE * -

다. A / B + C - * DE	라. AB / C + - DE *

3. 스택 메모리에 대한 정보의 입/출력 방식은? (2004년 기출문제)

가. FIFO	나. FILO	다. LILO	라. LIFO

4. 스택의 응용 분야와 거리가 먼 것은? (2004년 기출문제)

가. 운영체제의 작업 스케줄링

나. 함수 호출의 순서 제어

다. 인터럽트의 처리

라. 수식의 계산

5. 다음 식에 대하여 Postfix 기법으로 옳게 기술된 것은? (2004년 기출문제)

(A * B) + (C * D)

가. + A B * * C D	나. + * A B * C D

다. A B * C D * +	라. * A B + * C D

6. 다음은 Stack에 자료를 삽입(Insert)하는 알고리즘이다. 빈칸에 적합한 내용은? (2004년 기출문제)

procedure Insert(data, n, top, Stack)

if top≥ n then call Stack-Full;

top = top + 1;

Stack(top) = (                  );

end Insert

가. top	나. data

다. top-1	라. data-1

7. 다음 문장의 빈칸에 들어갈 단어는? (2005년 기출문제)

A ( ) is an ordered list in which all insertions and deletions are made at one end, called the top.

가. stack	나. queue	다. list	라. tree

8. 아래 infix로 표현된 수식을 postfix 표기로 옳게 변환한 것은? (2005년 기출문제)

A = ( B - C ) * D + E

가. = A * - B C + D E	나. = A + + - B C D E

다. A B C - D * E + =	라. A B C * D - E + =

9. 다음 영문의 괄호 안에 적합한 수식의 표현은? (2005년 기출문제)

The reverse Polish notation is in a form suitable for stack manipulation. The expression (A+B)*(C+D) is written in reverse Polish notation as ( ).

가. A B + C D + *	나. A B + C D * +

다. + A B + C D *	라. * + A B + C D

10. 데이터의 삽입, 삭제가 TOP이라고 부르는 한쪽 끝에서만 이루어지는 후입선출(LIFO)형태의 자료구조를 무엇이라고 하는가?

가. 스택          나.큐          다.덱          라.원형큐

11. 다음과 같은 중위식(infix)을 후위식(postfix)으로 올바르게 표현한 것은?

A/B*(C+D)+E

가. +*/AB+CDE       나. CD+AB/*E+       다. AB/(CD+)*/E+        라. AB/CD+*E+

12. 스택 알고리즘에서 T가 스택포인터이고, m이 스택의 길이일 때, 서브루틴 “AA"가 처리해야하는 것은?(2007년 기출문제)

T ← T+1;

if T>m  then goto AA;

else STACK(T) ← item;

가. 오버플로 처리	나. 언더플로 처리	다. 삭제 처리      라. 삽입 처리