본문 바로가기
728x90

CS (Computer Science)3

[CS] 자료구조 - 이진 트리 이진 트리(binary tree) - 트리 중에서 차수가 2인 트리- 모든 노드의 차수는 최대 2를 넘지 않음- 모든 노드는 최대 2개의 서브 트리를 가짐- 각 서브 트리는 왼쪽 서브 트리와 오른쪽 서브 트리로 구분됨- 왼쪽 노드와 오른쪽 노드에 '순서'의 의미를 부여함- 이진 트리의 각 서브 트리는 다시 이진 트리가 됨 # 이진 트리의 높이- N개의 노드를 가진 이진 트리의 높이를 계산으로 구할 수 있음최대 높이 : N으로 노드의 개수와 같음최소 높이 : 모든 내부 노드가 최대 2개의 자식 노드를 갖는 경우로서 [log2 N] +1 이 높이가 됨이진 트리 순회 연산- 일정한 순서에 따라 트리에 있는 각 노드를 한 번씩 방문하는 것 # 전위 순회 (preorder traversal, DLR)- DLR은 .. 2024. 10. 1.
[CS] 자료구조 - 트리 트리(Tree)- 데이터 간의 관계를 나타내는 비선형 자료구조- 노드(node) 라고 불리는 부분과 노드를 연결하는 가지(branch, edge)로 구분됨- 노드 사이에는 계층적인 관계성을 갖음  # 트리 용어 정의노드(node) : 정보 항목을 의미루트(root) : 빈 트리가 아닌 경우에 맨 꼭대기에 있는 하나의 노드차수(degree) : 각 노드에 있는 가지의 수잎 노드(leaf node) = 단말 노드(terminal node) : 노드의 차수가 0인 노드내부 노드 = 비단말 노드(non-terminal node) : 루트 노드와 단말 노드를 제외한 나머지 노드부모(조상) 노드 : 루트 노드로부터 어떤 노드 x까지의 경로(가지들의 모음) 상에 존재하는 모든 노드를 x의 부모 노드라고 함자식(자손).. 2024. 10. 1.
[CS] 컴퓨터와 자료 컴퓨터란?- 프로그램이 가능한 데이터 처리기 (programmable data processor)- 특수 목적의 한 종류의 작업을 처리하는 기계가 아니라, 다양한 형태의 작업을 수행할 수 있는 범용의 기계프로그램 - 컴퓨터가 데이터를 어떻게 처리(조작)할지를 알려주는 일련의 명령어의 집합- 컴퓨터에서 처리 가능한 작업의 유형과 연산의 집합을 결정  - 프로그래밍 과정의 결과물(알고리즘, 코딩)컴퓨터 장점(특징) - 신속한 처리- 정확성- 자동(프로그램의 지시에 따라 자동으로 처리)- 대용량(대용량의 데이터 저장 및 처리)컴퓨터과학이란?- 데이터의 획득, 표현, 처리, 저장, 통신, 접근을 위한 방법들의 실행 가능성, 구조화, 표현, 기계화에 관련된 내용을 다루는 학문 분야- 컴퓨터, 데이터, 프로그램, .. 2024. 9. 5.
728x90