#24 해설
2006년 5급 PSAT 언어논리
문제 번호 선택
#24 해설
2006년 5급 PSAT 언어논리
문제 번호 선택
2006년 5급 PSAT 언어논리
문제 번호 선택
2006년 5급 PSAT 언어논리
문제 번호 선택
다음 글의 내용과 부합하지 않는 것은?
컴퓨터의 주메모리는 일정한 크기의 기억 장소인 메모리 셀(cell)들로 이루어져 있다.
또 각각의 셀에는 순서대로 주소가 지정되어 있어, 주소를 가지고 해당 셀에 접근할 수 있다.
메모리에 주어진 자료들을 저장하고 특정 자료의 값을 읽어오거나 수정, 삭제하려면 자료의 일정한 구조가 요구되는데 이를 '자료구조'라고 한다.
프로그래머는 자료의 크기, 용도에 따라 자신의 프로그램 내에서 적당한 자료구조를 선택할 수 있다.
많이 쓰이는 자료구조로는 '배열'(array)과 '연결 리스트'(linked list)가 있다.
자료구조가 배열인 경우 프로그램이 처음 실행될 때 저장할 수 있는 자료들의 최대 개수(N)와 자료 하나 당 소요되는 메모리 셀의 개수(M)를 미리 정한다.
프로그램은 주메모리 상의 빈 공간에 N×M개의 연속된 메모리 셀을 미리 확보하여 최대 N개의 자료를 차례로 저장할 수 있게 된다.
특정 자료에 접근하려면 그 자료가 위치한 메모리 셀의 주소가 필요하다.
배열의 경우 그 주소는 다음과 같이 쉽게 계산될 수 있다.
k번째 자료의 주소는 맨 처음 자료의 첫째 셀 주소에 (k-1)×M을 더하면 된다.
연결 리스트의 경우, 자료의 추가가 필요할 때에만 노드 하나 크기만큼의 메모리 공간을 할당받아 새로운 자료를 추가한다.
노드 하나는 자료 하나를 저장할 자료셀과 메모리 주소 하나를 저장할 주소셀로 이루어진다.
예를 들어 저장될 자료가 정수로 구성되어 있고 메모리 주소를 저장하는 데 셀 두 개를 사용한다면, 하나의 노드는 정수 하나를 저장할 자료셀 하나와 주소셀 둘을 합하여 총 세 개의 셀로 이루어진다.
연결 리스트에서 새로운 자료는 다음과 같이 추가된다.
먼저 이 노드를 추가하려고 하는 프로그램의 실행 단계에서 주메모리의 비어 있는 곳에 노드 하나에 필요한 셀 크기만큼 메모리 셀을 새로 확보하고, 자료를 이 새로운 노드의 자료셀에 추가한다.
그리고 그 전 노드의 주소셀에는 이 노드의 자료셀 주소가 저장된다.
다시 말하면 연결 리스트 내의 (k-1)번째 자료의 주소셀에는 k번째 자료를 찾아갈 수 있도록 해주는 주소값이 저장되어 있다.
결국 연결 리스트에서는 처음 노드에서 시작하여 각 노드의 주소셀에 저장된 주소값을 따라 다음 노드를 찾아감으로써 저장된 모든 자료에 접근할 수 있다.
어떤 자료가 필요하지 않게 되면 그 자료가 속한 노드를 삭제하고 앞뒤 노드의 주소를 연결하면 된다.
이 과정에서 얻어진 빈 메모리 셀은 다른 자료의 저장 공간으로 재활용될 수 있다.
① 전체 자료의 개수를 미리 알 수 없을 경우에는 연결 리스트가 유리하다.
② 연결 리스트는 자료를 추가할 때마다 메모리 공간을 추가로 할당받아야 한다.
③ 한 연결 리스트를 이루는 모든 노드들은 연속된 메모리 위치에 인접하여 저장되어야 한다.
④ 일정한 개수의 같은 크기의 자료들을 저장하는 경우에 배열이 연결 리스트보다 메모리 공간을 적게 사용한다.
⑤ 주어진 연결 리스트에 포함된 어떤 자료를 찾아서 읽어오는 데 걸리는 시간은 자료구조에서 그 자료가 몇 번째에 위치하는가에 따라 달라진다.
2006년 5급 PSAT 언어논리
문제 번호 선택
2006년 5급 PSAT 언어논리
문제 번호 선택
2006년 5급 PSAT 언어논리
문제 번호 선택