-- 높은 빈도로 출제되는 개념들은 많지만 그 중 내가 헷갈리고 뭔가 부족하다 싶은 개념들만 정리 --
1. UML
-> 분석, 설계, 구현 등 시스템 개발 과정에서 고객과 개발자 상호간의 의사소통이 원활하게 이루어지도록 표준화한 대표적인 모델링 언어이다.
구성요소
사물(Things), 관계(Relationships), 다이어그램(Diagram)
다이어그램
1) 구조적 다이어그램
- 클래스 다이어그램
- 객체 다이어그램
- 컴포넌트 다이어그램
- 배치 다이어그램 (Deployment - )
- 복합체 다이어그램 (Composite Structure - )
- 패키지 다이어그램
<클 객 컴 배 복 패>
2) 행위 다이어그램
- 유스케이스 다이어그램
- 시퀀스 다이어그램
- 커뮤니케이션 다이어그램
- 상태 다이어그램
- 활동 다이어그램
- 상호작용 개요 다이어그램
- 타이밍 다이어그램
<유 시 커 상 활 상 타>
2. FIFO
3. 후위 / 전위 / 중위 연산자
4. 정렬
1) 삽입 정렬 O(n^2)
: 이미 순서화된 파일에 새로운 하나의 레코드를 순서에 맞게 삽입시켜 정렬한다.
초기 : 8 5 6 2 4
1 : 8 5 6 2 4 -> 5 8 6 2 4
2 : 5 8 6 2 4 -> 5 6 8 2 4
3 : 5 6 8 2 4 -> 2 5 6 8 4
4 : 2 5 6 8 4 -> 2 4 5 6 8
2) 선택 정렬 O(n^2)
: n개의 레코드 중에서 최소값을 찾아 첫 번째 레코드 위치에 놓고, 나머지 (n-1)개 중에서 다시 최솟값을 찾아 두 번째 레코드 위치에 놓는 방식을 반복하여 정렬하는 방식이다.
초기 : 8 5 6 2 4
1 : 5 8 6 2 4 -> 5 8 6 2 4 -> 2 8 6 5 4 -> 2 8 6 5 4
2 : 2 6 8 5 4 -> 2 5 8 6 4 -> 2 4 8 6 5
3 : 2 4 6 8 5 -> 2 4 5 8 6
4 : 2 4 5 6 8
3) 버블 정렬 O(n^2)
: 주어진 파일에서 인접한 두 개의 레코드 키 값을 비교하여 그 크기에 따라 레코드 위치를 서로 교환하는 정렬 방식이다.
초기 : 8 5 6 2 4
1 : 5 8 6 2 4 -> 5 6 8 2 4 -> 5 6 2 8 4 -> 5 6 2 4 8
2 : 5 6 2 4 8 -> 5 2 6 4 8 -> 5 2 4 6 8
3 : 2 5 4 6 8 -> 2 4 5 6 8
4 : 2 4 5 6 8
4) 퀵정렬
: 레코드의 많은 자료 이동을 없애고 하나의 파일을 부분적으로 나누어 가면서 정렬하는 방법
평균 수행 시간 복잡도 : O(nlog2N)
최악 : O(n^2)
5) 힙정렬
: 전이진 트리를 이용한 정렬방식이다.
평균 수행 시간 복잡도 : O(nlog2N)
최악 : O(nlog2N)
5) 2-Way 합병 정렬
: 이미 정렬되어 있는 두 개의 파일을 한 개의 파일로 합병하는 정렬방식
평균 수행 시간 복잡도 : O(nlog2N)
최악 : O(nlog2N)
6) 기수정렬(Radix Sort) (버킷정렬)
평균 수행 시간 복잡도 : O(dn)
최악 : O(dn)
'Self-Development > Study' 카테고리의 다른 글
2022년 정보처리기사 실기 - 데이터 입 출력 구현 (0) | 2022.04.19 |
---|---|
2022년 정보처리기사 실기 - 요구사항 확인 (0) | 2022.04.18 |
VAN, PG사란 무엇일까? (개념 / 차이점 / 프로세스 정리) (2) | 2022.03.16 |
2022년 정보처리기사 필기 오답 및 내용 요약 정리 (20.8월, 20.6월) (0) | 2022.03.04 |
2022년 정보처리기사 필기 오답 및 내용 요약 정리 (20.9월, 21.8월, 21.6월) (0) | 2022.03.03 |
댓글