정렬에 대한 기본 개념과 거리가 먼 것은?
1. 순서대로 나열하는 것을 의미한다.
2. 작은 것부터 나열하는 것을 오름차순 정렬이라고 한다.
3. 큰 것부터 나열하는 것을 내림차순 정렬이라고 한다.
4. 문자열은 숫자가 큰것이 부터 정렬되므로 A가 가장 큰 값이다.
해시테이블에 대한 설명이 틀린 것은?
1. 해시 함수와 배열을 결합한 자료구조
2. 해시 맵 (Hash Map) / 딕셔너리 (Dictionaries) 등의 형태이다.
3. 키와 값의 형태를 이루고 있다.
4. 중복을 막을 수 없다.
다음 중 정렬되어 있는 데이터를 기준으로 검색하는 알고리즘은?
1. 순차 검색
2. 이진 검색
3. 보간 검색
4. 선형 검색
다음 그래프를 깊이 우선 탐색할 때 방문 순서가 바른 것은? . 단 왼쪽 먼저 방문한다고 가정한다.
1. 문별, 솔라, 쯔위, 선미, 화사, 휘인
2. 문별, 솔라, 휘인, 쯔위, 선미, 화사
3. 문별, 휘인, 쯔위, 솔라, 선미, 화사
4. 문별, 화사, 선미, 쯔위, 휘인, 솔라
지문의 그림을 보고 `123817`를 찾을 수 있는 방법은?
1. 이진탐색
2. 해시탐색
3. 순차탐색
4. 트리탐색
해시 테이블의 크기를 늘리고, 늘어난 해시 테이블의 크기에 맞추어 테이블 내의 모든 데이터를 다시 해싱하는 해시 테이블 충돌 해결방법은?
1. 제곱 탐사(Quadratic Probing)
2. 선형 탐사 (Linear Probing)
3. 재해싱(Rehashing)
4. 체이닝
해시 함수로부터 얻어낸 주소에 이미 다른 데이터가 입력되어 있음을 발견하면, 현재 주소에서 고정 폭(예를 들면 1)으로 다음 주소로 이동하는 충돌 해결 방법은?
1. 제곱 탐사(Quadratic Probing)
2. 선형 탐사 (Linear Probing)
3. 이중 해싱
4. 체이닝
그래프에 대한 설명이 틀린 것은?
1. 항목들이 서로 어떻게 연결되어 있는지 모형화하는 방법
2. 인접(Adjacent): 간선으로 연결된 두 정점을 일컫는 말. “이웃 관계”라고 함
3. 경로(Path): 정점에서 다른 정점에 이르는 방법
4. 간선이 방향성을 가지면 무방향성 그래프(Undirected Graph)라 함
지문은 그래프를 표현한 그래프와 인접행렬이다. 5행의 비어 있는 곳은 바르게 채운것은?
1.
2.
3.
4.
주어진 지문은 삽입정렬을 파이썬으로 작성한 것이다. □안에 들어갈 기호는? 단 오름차순으로 정렬하는 프로그램이다.
1. >
2. <
3. ==
4. !=
다음 설명은 알고리즘 표현 방법 중 무엇에 해당되는 설명인가?
[일반 사람이 이해하기 쉽게 표현할 수 있으나, 최종적으로 코드로 변경하는 데는 한계가 있다.]
1. 의사코드(pseoudo)로 표현
2. 순서도로 표현
3. 프로그램으로 표현
4. 자연언어로 표현
지문에 해시함수 방법은 무엇인가?
1. 나눗셈법
2. 제곱법
3. 폴더법
4. 체인법
힙 정렬에 대한 설명이 바르지 않은 것은?
1. 힙정렬은 힙과정과 힙정렬 과정으로 이루어진다.
2. 힙은 완전 이진트리로 구성된다.
3. 힙은 자신의 자식노드보다 값이 크지 않다.
4. 힙정렬은 주어진 배열을 힙으로 만든 뒤 차례로 하나씩 힙에 추가함으로써 정렬한다.
지문이 설명하고 있는 알고리즘은?
[(1) 그래프 내의 모든 간선을 가중치의 오름차순으로 목록을 만든다.
(2) 앞에서 만든 간선의 목록을 차례대로 순회하면서 간선을 최소 신장 트리에 추가합니다.
단, 이때 추가된 간선으로 인해 최소 신장 트리 내에 사이클이 형성되면 안된다.]
1. 프림 알고리즘(Prim’s Algorithm)
2. 깊이 우선 탐색을 이용한 위상 정렬
3. 다익스트라 알고리즘
4. 크루스칼알고리즘
병합 정렬의 특징으로 맞지 않는 것은?
1. 단순히 중간 인덱스를 찾아야 하는 분할 비용보다 모든 값을 비교해야 하는 병합 비용이 크다.
2. 전반적인 반복의 수는 점점 절반으로 줄어들기 때문에 O(logn)`시간이 필요하다.
3. 각 패스에서 병합할 때 모든 값들을 비교해야 하므로 O(n) 시간이 소모된다.
4. 피봇을 기준으로 큰 값과 작은 값을 분할 하여 정복하는 알고리즘으로 선택 정렬, 삽입 정렬 보다 속도가 빠른 편이다.
지문에서 설명하는 알고리즘은?
1. 선택 알고리즘
2. 정렬 알고리즘
3. 검색 알고리즘
4. 병합 알고리즘
삽입정렬의 시간복잡도를 표현한 것은?
1. O(nlogn)
2. O(n)
3. O(n^2)
4. O(1)
지문은 배열을 이용해 힙을 구현한 것이다. 설명이 잘못 된 것은?
1. 깊이 0의 노드는 배열의 0번 요소에 저장.
2. 깊이 1의 노드(모두 2개)는 배열의 1~2번 요소에 저장.
3. 깊이 2의 노드(모두 4개)는 배열의 3~6번 요소에 저장
4. Priority필드를 추가한다.
다음 중 KD-Tree와 관련이 없는 것은?
1. 각 레벨에서 필드를 번갈아 가며 검색에 사용한다.
2. 한 level에서는 여러 필드를 사용할 수 있다.
3. 총 k개의 필드를 사용하는 검색이라면, k 개의 level을 내려가면 검색에 사용하는 필드가 일치한다.
4. 검색키가 두 개 이상의 필드로 이루어진 검색이다.
파이썬 이진트리 사용법에 대한 설명이 틀린 것은?
1. bisect라이브러리를 사용한다.
2. 정렬된 리스트에서 target보다 크거나 같은 값의 바로 이전 인덱스는 bisect.bisect_left이다.
3. bisect.bisect_right는 정렬된 리스트에서 target보다 크거나 같은 값의 바로 이전 인덱스
4. bisect.bisect는 bisect.bisect_left와 동일함
지문에 주어진 배열을 버블 정렬 알고리즘을 이용하여 오름차순으로 정렬하려고 한다. 1회전을 끝난 뒤 배열의 값을 순서대로 적으면? 단 1회전은 배열을 처음부터 끝까지 한번 읽은 상태이다.
8, 24, 46, 15, 73
지문에 주어진 트리는 2진 트리이다. `14`을 삽입하려고 한다. 연결된 트리의 위치는? 연결될 부모노드의 값을 적으시오.
11
지문에 주어진 파이썬 프로그램은 어떤 알고리즘을 구현한 것이다. 오름차순으로 정렬되는 알고리즘이고 리스트의 끝(end)이 점점 늘어난다.
삽입정렬알고리즘
지문에서 설명하는 그래프의 종류는?[간선에 “가중치(Weight)” 속성을 부여, 각 간선이 갖고 있는 가중치의 합이 최소가 된다. 간선으로 그래프의 모든 정점을 연결하는 그래프 중 최소의 값을 갖는 그래프이다.]
최소 신장 트리
지문은 행로경로문제를 푸는 과정에서 이동 방법 (제약조건)을 위배하였다. 불법이동의 종류는?
불법 이동 (상향) or 위로 이동