목록전체 글 (160)
Odds and Ends
스스로 균형을 잡는 이진 탐색 트리, AVL Tree 📌 AVL Tree 탄생 이유 아래와 같은 이진 검색 트리에서는 문제점이 발생한다. 위와 같은 트리는 한 쪽으로 쏠려있어서 원하는 자료를 찾으려면 루트부터 끝까지 탐색을 해야 찾을 수 있음 >> 이러한 한계를 극복하고자 AVL 트리가 탄생함 AVL 트리는 이진 검색 트리이면서 동시에 균형을 유지하고 있습니다. 모든 노드의 왼쪽과 오른쪽 서브트리의 높이 차이가 1 이하입니다. 균형이 무너진 유형에는 4가지가 있습니다. LL, RR, LR, RL 📌 균형잡기 이해하기 좋은 글 [Data Structure] AVL(Adelson-Velsky and Landis) 트리란? 안녕하세요 Foma 💻 입니다! 오늘은 저번에 정리했던 이진 탐색 트리를 더 업그레이드..
📌 현대의 컴퓨터 시스템 📌 폰노이만 컴퓨터 : 현대 컴퓨터의 일반적 모형 > 프로그램 저장 컴퓨터 개념을 제안함 : 폰 노이만 구조에서는 먼저 연산의 수행과 관련된 명령어와, 연산에 필요하거나 결과로 나온 데이터를 저장장치(메모리)에 보관하게 되며, 순차적으로 메모리에 저장된 용을 끄집어내 지시대로 연산 수행하는 방식입니다. 1) 하드 디스크 > 2) 메인메모리 로드 > 3) 한줄씩 기계어 코드를 CPU에 가져가 실행 📌 폰 노이만 명령어 실행 사이클 : 1. 명령어 가져오기 2. 명령어 실행하기 3. 인터럽트 체크 📌 컴퓨터 특징 - I/O 디바이스와 CPU 동시 실행 가능 - 장치 컨트롤러는 특정 장치 유형 담당 - 각 장치 컨트롤러에는 로컬 버퍼 존재 - CPU가 메인 메모리에서 로컬 버퍼로 데이..
Chap 01 데이터베이스 기본 📌 트랜잭션 : 인가받지 않은 사용자로부터 데이터를 보장하기 위해 DBMS가 가져야 하는 특성, 하나의 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위 📌 트랜잭션 특성 원자성(Atomicity): 트랜잭션의 연산 전체가 성공 또는 실패되어야 하는 성질 (All or Noting) 일관성(Consistency): 트랜잭션 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야 하는 성질 격리성(Isolation): 동시에 실행되는 트랜잭션들이 서로 영향을 미치지 않아야 한다는 성질 영속성(Durability): 성공이 완료된 트랜잭션의 결과는 영속적으로 데이터베이스에 저장되어야 하는 성질 📌 트랜잭션 제어어(TCL, Transaction Control Language)..
문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 예제 예제 입력 1 3 1 # N, M > 1~3까지 자연수 중 중복 없이 1개를 고른 수열 모두 예제 출력 1 1 2 3 예제 입력 2 4 2 # 1~4까지의 자연수 중 중복 없이 2개씩 고른 수열 모두 예제 출력 2 1 2 1 3 1 4 2 1 2 3 2 4 3..
Chap 01 인터페이스 구현 (중요도: ***) 1. 컴포넌트 명세서: 컴포넌트 개요, 부 클래스의 동작, 인터페이스를 통해 외부와 통신하는 명세 2. 인터페이스 명세서: 컴포넌트 명세서에 명시된 인터페이스 클래스의 세부적인 조건 및 기능을 명시 3. JSON(Javascript Markup Language): 속성-값 쌍 또는 "키-값 쌍" 으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 테스트를 사용하는 개방형 표준 포맷, AJAX에서 많이 사용되고 XML을 대체하는 주요 데이터 포맷 4. XML(Extensible Markup Language): HTML의 단점을 보완한 인터넷 언어로, SGML의 복잡한 단점을 개선한 특수한 목적을 갖는 마크업 언어 5. AJAX(Asynchr..
Chap01. 연계 요구사항 분석 (중요도: *) 1. 연계 요구사항 분석: 서로 다른 두 시스템/장치/소프트웨어를 이어주는 중계 역할을 하는 연계시스템과 관련된 요구사항을 분석하는 과정 2. 연계 요구사항 분석 참고 문서 개체 정의서: 데이터베이스 개념 모델링 단계에서 도출한 개체의 타입과 관련 속성, 식별자 등의 정보를 개괄적으로 명세화한 정의서 테이블 정의서: 논리 및 물리 모델링 과정 설계 산출물 인터페이스 명세서: 인터페이스 정의서에 작성한 항목을 자세히 작성한 것 Chap02. 연계 매커니즘 구성 (중요도:**) 1. 연계 매커니즘: 응용 소프트웨어와 연계 대상 모듈 간의 데이터 연계 시 요구사항을 고려한 연계 방법과 주기를 설계하기 위한 매커니즘 기능: 데이터를 생성하여 전송하는 송신 시스템..
DFS란? ; Depth First Search, 깊이 우선 탐색 : 그래프에서 깊은 곳을 먼저 탐색하는 알고리즘 DFS 알고리즘 이해를 위해서는 스택과 그래프 자료구조에 대한 이해가 필요합니다. ↓ ↓ ↓ 1) 스택이란? : 스택은 후입 선출 (LIFO, 한쪽에서만 데이터를 넣고 뺄수 있음) ★ 재귀 함수와 스택 자료구조가 동일하기때문에 스택이 DFS에 쓰인다. : 재귀함수에서는 동일한 함수를 호출할 때마다 함수를 위한 메모리가 계속해서 할당된다. 이때 사용되는 메모리가 스택! 스택은 후입선출 구조이기 때문에 가장 마지막에 호출된 함수 factorial(1)을 먼저 완료하고, 값을 아래로 전달하여 최초로 호출된 함수 factorial(3)이 최종 값을 계산한다. 2) 그래프란? : 그래프는 노드(정점)..
Chap01 논리 데이터 저장소 확인 (중요도: ***) 1. 데이터 모델: 현실세계 정보를 인간/컴퓨터가 이해하도록 추상화하여 표현한 모델 2. 데이터 모델 절차: 요구사항 분석 > 개념적 설계 > 논리적 설계 > 물리적 설계 3. 논리 데이터 모델링: 업무의 모습을 모델링 표기법으로 형상화하여 사람이 이해하기 쉽게 표현하는 프로세스 4. 논리적 데이터 모델링 종류 관계 데이터 모델: 테이블 형태, 1:1 , 1:N , N:M 계층 데이터 모델: 트리 형태(상하 관계), 1:N 네트워크 데이터 모델: 그래프 형태, N:M 5. 관계 대수 연산자 종류 1) 일반 집합 연산자 합집합 교집합 차집합 카티션 프로덕트 2) 순수 관계 연산자 셀렉트 프로젝트 조인 디비전 6. 관계 해석: 튜플 관계해석과 도메인을..