1. 메모
노드(Node) : 컴퓨터공학에서 쓰이는 기초적인 단위로, 네트워크에서는 장치나 데이터 지점을 의미
컴파일(Compile) : 주어진 언어로 작성된 컴퓨터 프로그램을 다른 언어의 동등한 프로그램으로 변환하는 프로세스
관계대수(Relational Algrbra) : 원하는 정보를 어떻게 유도하는가를 연산자와 연산규칙을 이용하여 기술한 절차적 언어
관계해석(Relational Calculus) : 원하는 정보가 무엇이라는 것만 정의한 비절차적 언어
2. Point
자료구조의 구성
- 선형구조 : 데이터의 전후 항목 사이 관계가 1:1이며, 선후 관계가 명확하게 한 개의 선의 형태를 갖는 리스트 구조
• 종류 : 배열, 연결 리스트, 스택, 큐, 데크
- 비선형구조 : 데이터 항목 사이의 관계가 1:n(n:m)인 그래프적 특성을 갖는 형태
• 종류 : 트리, 그래프
스택(Stack) : 후입선출(LIFO : Last In First Out) 구조로, 마지막에 삽입한 원소를 제일 먼저 삭제하는 구조
- 응용 : 수식 계산, 퀵 정렬, 깊이 우선 탐색, 이진 트리 운행 등
큐(Queue) : 선입선출(FIFO : First In First Out) 구조로, 제일 먼저 삽입한 원소가 제일 먼저 삭제되는 구조
- 응용 : 작업 스케줄링, 트리의 레벨 순회, 너비 우선 탐색
트리 용어
- 노드(Node) : 데이터와 링크를 통합적으로 표현
- Root 노드 : 최상위 노드
- 단말 노드 : 자식을 가지지 않는 노드
- 비단말 노드 : 자식을 가지는 노드
- 노드의 차수(Degree) : 한 노드가 가지고 있는 서브 트리의 수
- 형제(Sibings) 노드 : 한 부모의 자식 노드
- 트리의 차수(Degree) : 트리에 있는 노드의 최대 차수
- 노드의 레벨(Level) : 한 노드의 레벨이 i이면, 자식 노드의 레벨은 i+1
- 트리의 높이(Height) or 깊이(Depth) : 트리의 최대 레벨
- 노드의 레벨 순서(Level Order) : 트리의 노드들에 레벨별로 위에서 아래, 왼쪽에서 오른쪽으로 차례로 순서를 매긴 것
트리 순회
- 전위 순회 : A-B-D-E-C-F
- 중위 순회 : D-B-E-A-C-F
- 후위 순회 : D-E-B-F-C-A
연산 시간 순서
선택 정렬(Selection Sort) 예시(초기 상태 : 9-7-1-6-3 / 오름차순)
- 1회전 : 1-7-9-6-3
- 2회전 : 1-3-9-6-7
- 3회전 : 1-3-6-9-7
- 4회전 : 1-3-6-7-9
버블 정렬(Bubble Sort) 예시(초기 상태 : 9-7-1-6-3 / 오름차순)
- 1회전 : 7-9-1-6-3 / 7-1-9-6-3 / 7-1-6-9-3 / 7-1-6-3-9
- 2회전 : 1-7-6-3-9 / 1-6-7-3-9 / 1-6-3-7-9 / 1-6-3-7-9
- 3회전 : 1-6-3-7-9 / 1-3-6-7-9 / 1-3-6-7-9 / 1-3-6-7-9
삽입 정렬(Insertion Sort) 예시(초기 상태 : 9-7-1-6-3 / 오름차순)
- 1회전 : 7-9-1-6-3
- 2회전 : 7-1-9-6-3 / 1-7-9-6-3
- 3회전 : 1-7-6-9-3 / 1-6-7-9-3 / 1-6-7-9-3
- 4회전 : 1-6-7-3-9 / 1-6-3-7-9 / 1-3-6-7-9 / 1-3-6-7-9
정렬 알고리즘 복잡도
종류 | 평균 | 최악 |
선택 정렬(Selection Sort) | O(n^2) | O(n^2) |
버블 정렬(Bubble Sort) | O(n^2) | O(n^2) |
삽입 정렬(Insertion Sort) | O(n^2) | O(n^2) |
힙 정렬(Heap Sort) | O(nlogn) | O(nlogn) |
합병 정렬(Merge Sort) | O(nlogn) | O(nlogn) |
퀵 정렬(Quick Sort) | O(nlogn) | O(n^2) |
SQL의 종류
종류 | 관련 명령어 |
데이터 정의어 (DDL : Data Definition Language) |
CREATE, DROP, ALTER, RENAME, TRUNCATE 등 |
데이터 조작어 (DML : Data Manipulation Language) |
SELECT, INSERT, UPDATE, DELETE 등 |
데이터 제어어 (DCL : Data Control Language) |
GRANT, REVOKE 등 |
트랜잭션 제어어 (TCL : Transaction Control Laguage) |
COMMIT, ROLLBACK, SAVEPOINT 등 |
소스 코드 인스펙션 진행 순서
Planning -> Overview -> Preparation -> Meeting -> Re-Work, Re-Inspection -> Following
3. 오답 노트
다음 그림에서 트리의 차수(Degree of Tree)는 ?
1. 1
2. 2
3. 4
4. 8
트리의 차수는 해당 트리의 노드 중 가장 차수가 큰 것을 의미하며 이 문제에서는 2가 가장 큰 차수이다.
SQL 실행 과정에서 옵티마이저가 생성한 실행 계획을 SQL 엔진이 실제 실행할 수 있는 코드 형태로 포멧팅하는 것은 ?
1. Row-Source Generator
2. Soft Parse
3. Hard Parse
4. Uesr Process
Row-Source Generator에 대한 설명이다.
개인 공부를 위한 게시물로 틀린 내용을 포함할 수 있는 점 참고 부탁드립니다.
'자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사 필기] Part 2 소프트웨어 개발 Chapter 3 제품 소프트웨어 패키징 공부 (0) | 2023.12.12 |
---|---|
[정보처리기사 필기] Part 2 소프트웨어 개발 Chapter 2 통합 구현 공부 (1) | 2023.12.11 |
[정보처리기사 필기] Part 1 소프트웨어 설계 오답 노트 (1) | 2023.12.07 |
[정보처리기사 필기] Part 1 소프트웨어 설계 Chapter 4 인터페이스 설계 공부 (0) | 2023.11.30 |
[정보처리기사 필기] Part 1 소프트웨어 설계 Chapter 3 애플리케이션 설계 공부 (0) | 2023.11.30 |
댓글