1. 좋은 자료구조의 조건에 대해 설명하여라.
- 자료의 추가, 삭제, 검색을 효율적으로 수행하고, 간결하게 표현할 수 있는 것.
2. 다음과 같은 조건의 1차원 배열 arr에서 arr[3] 요소의 주소를 계산하여라.
[조건] 배열의 시작주소는 200이고, 배열의 첨자는 0으로 시작된다. 그리고 배열 요소의 크기는 4바이트다.
답 : 212
3. 다음과 같은 조건의 행 중심 2차원 배열 arr[5][3]에서 arr[3][2] 요소의 주소를 계산하여라.
[조건] 배열의 시작주소는 200이고, 배열의 첨자는 0으로 시작된다. 그리고 배열 요소의 크기는 4바이트다.
답 : 244
4. 연속리스트와 연결 리스트에 대해 설명하여라.
- 연속리스트 (Contioguous list) : 배열을 이용하는 것
- 연결리스트 (Linked list) : 포인터를 이용하는 것
5. 단순 연결 리스트에 데이터를 삽입하고 삭제하는 과정을 나타내어라.
<삽입 과정>
<삭제 과정>
6. 이중 연결 리스트에 데이터를 삽입하고 삭제하는 과정을 나타내어라.
<삽입 과정>
<삭제 과정>
7. 배열로 구현한 스택에 데이터를 삽입하고 삭제하는 과정을 나타내어라.
<초기 상태>
- top은 데이터의 삽입과 삭제가 일어지는 배열의 인덱스를 나타냄
- 현재 상태에서 top는 0
<삽입 과정>
- stack배열에서 top인 0을 첨자로 하는 부분, 즉 stack[0]에 데이터를 저장
- top의 값을 1 증가 (top는 1이 됨)
<삭제 과정>
- 삭제할 때는 top를 1 감소시켜주면 된다
8. 연결 리스트로 구현한 스택에 데이터를 삽입하고 삭제하는 과정을 나타내어라.
<삽입>
<삭제>
9. 배열로 구현한 큐에 데이터를 삽입학 삭제하는 과정을 나타내어라.
<삽입 과정>
- q 배열에서 q[rear]에 데이터(12)를 저장한다.
- rear 값을 1 증가 한다.
<삭제 과정>
- front를 1 증가시킨다.
10. 연결리스트로 구현한 큐에 데이터를 삽입하고 삭제하는 과정을 나타내어라.
<삽입 과정>
- 마지막 노드의 포인터를 새로운 노드를 가리키게 한다.
<삭제 과정>
- front가 가리키는 노드의 포인터 영역이 가리키는 곳을 front가 가리키게 한다
- 데이터 13이 든 노드를 삭제한다
11. 다음 이진 트리를 전위, 중위, 후회 순회했을 때의 순서를 나열하여라.
전위(PRT - LEFT - RIGHT) :
A - B - D - F - G - C - E
중위(LEFT - PRT - RIGHT) :
F - D - G - B - A - E - C
후위(LEFT - RIGHT - PRT) :
F - G - D - B - E - C - A
12. 다음의 이진 탐색 트리에 대해 물음에 답하여라.
(참고링크 : http://mirai_neco.blog.me/110110938199 )
(1) 데이터 9를 삽입하여라
(2) 데이터 2인 노드를 삭제하여라
(3) 데이터 11인 노드를 삭제하여라
잘못된 점은 댓글로 알려주시면 감사하겠습니다 :)
그리다가 시간 다 갔네요...
'Computers > (한빛) 컴퓨터개론' 카테고리의 다른 글
ch9. 데이터베이스 (0) | 2011.08.16 |
---|---|
ch8. 알고리즘 (0) | 2011.08.16 |
ch6. 프로그래밍 언어 (0) | 2010.12.28 |
ch5. 운영체제 (0) | 2010.12.28 |
ch4. 컴퓨터 구조 (0) | 2010.09.26 |