
총 36개
-
데이터베이스 ER 다이어그램 작성2025.01.271. ER 다이어그램 ER 다이어그램은 데이터베이스에 저장되는 데이터의 구조와 데이터 간의 관계를 시각적으로 표현하는 도구입니다. ER 다이어그램에서는 개체(Entity)를 사각형으로, 관계(Relationship)를 마름모로 표현하며, 개체와 관계의 연결 관계(1:1, 1:N, N:N)를 나타냅니다. 필수적으로 참여하는 개체는 개체와 관계를 이중선으로 연결하여 표현합니다. 2. 릴레이션 스키마 릴레이션 스키마는 데이터를 표준화된 형식으로 표현하는 도구입니다. 릴레이션 스키마에서는 개체를 테이블로, 속성을 열로 표현하며, 기본 키와...2025.01.27
-
인하대 데이터구조 3주차 Homework01 하노이의 탑2025.05.031. 하노이의 탑 하노이의 탑은 재귀적으로 구현할 수 있는 문제로, 입력 n에 대해 2^n - 1번의 이동이 필요합니다. 이 문제에서는 재귀 함수를 사용하여 하노이의 탑을 구현하고, 시간 복잡도와 공간 복잡도를 분석했습니다. 64개의 원판이 있는 경우 약 1.844674407 x 10^19번의 이동이 필요합니다. 1. 하노이의 탑 하노이의 탑은 고대 수학 퍼즐로, 세 개의 기둥과 n개의 원판으로 구성되어 있습니다. 이 퍼즐의 목표는 모든 원판을 한 기둥에서 다른 기둥으로 옮기는 것입니다. 이 과정에서 큰 원판이 작은 원판 위에 놓이...2025.05.03
-
주로 많이 쓰이는 트리에는 여러 종류의 트리가 사용된다. 이진트리와 이진탐색트리가 쓰이는 사례를2025.01.221. 이진 트리 이진 트리는 모든 노드 차수가 2 이하인 트리로 공집합 혹은 하나의 뿌리 노드에서 왼쪽 부분의 트리와 오른쪽 부분으로 이루어진 유한한 집합 구조를 의미한다. 이러한 이진 트리에는 순서 트리, 오리엔티드 트리, 포화 이진 트리, 완전 이진 트리, 사향 이진 트리 등 여러 가지 종류가 있다. 이진 트리는 산술 표현식 등에 사용되는 사례가 있다. 2. 이진 탐색 트리 이진 탐색 트리는 이진 트리에서 모든 노드가 서로 다른 키 값을 가지고 이진 트리에서 임의의 노드 n에 대해 n의 키 값이 항상 n의 왼쪽 자식 노드의 키 ...2025.01.22
-
자바스크립트에서 배열 사용의 장점과 선언 및 사용 방법2025.01.151. 자바스크립트 배열의 장점 자바스크립트 배열은 동적 크기 조정, 다양한 내장 메서드, 순차적인 데이터 접근, 유연성 등 여러 가지 장점을 가지고 있습니다. 배열의 크기가 고정되어 있지 않아 데이터 추가와 삭제에 따라 자동으로 크기가 조정되며, push(), pop(), shift(), unshift(), map(), filter(), reduce() 등 다양한 메서드를 통해 데이터 조작이 간편합니다. 또한 인덱스를 통해 순차적으로 데이터를 접근할 수 있어 데이터 정렬과 검색이 효율적이며, 다양한 데이터 타입을 혼합하여 저장할 수...2025.01.15
-
C언어 1 - 재귀함수와 포인터의 개념 및 활용2025.01.151. 재귀함수 재귀함수는 함수가 자기 자신을 호출하여 문제를 해결하는 기법입니다. 이 기법은 큰 문제를 작은 문제로 나누어 해결할 수 있게 해주며, 특히 반복적이고 계층적인 구조의 문제를 해결하는 데 유용합니다. 재귀함수를 사용할 때는 기본 조건(base case)과 재귀 조건(recursive case)을 명확히 정의해야 합니다. 재귀함수의 대표적인 사용 사례로는 팩토리얼 계산, 피보나치 수열 계산, 트리 탐색 등이 있습니다. 2. 포인터 포인터는 다른 변수의 메모리 주소를 저장하는 변수로, 간접적으로 변수에 접근하고 조작할 수 ...2025.01.15
-
관계 데이터 모델의 개념과 특징2025.01.081. 데이터 모델링 데이터 모델링은 데이터베이스 설계의 핵심과정으로, 현실세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정이다. 데이터 모델링을 쉽게 할 수 있는 도와주는 도구가 바로 데이터 모델인데, 개념적 데이터 모델과 논리적 데이터 모델이 있다. 논리적 데이터 모델은 개념적 구조를 논리적 데이터 모델링을 통해 데이터베이스의 논리적 구조로 표현하는 도구이다. 2. 관계 데이터 모델 관계 데이터 모델은 데이터와 이들 데이터 사이의 관계를 나타내기 위해 테이블의 모임을 사용한다. 일반적으로 테이블의 각 행은 일...2025.01.08
-
데이터 탐색 방법 선택을 위한 정렬 여부 확인2025.05.081. 순차 탐색 순차 탐색은 데이터 배열의 처음부터 끝까지 비교하며 탐색하는 방법으로, n개의 데이터에 대해 평균 (n+1)/2의 탐색이 필요하며 최악의 경우 n번의 비교가 필요하다. 2. 이진 탐색 이진 탐색은 정렬된 데이터에 대하여 배열의 중간값을 기준으로 계속 자르는 방식으로 탐색을 진행하며, n개의 데이터에 대해 최대 log₂n의 비교가 필요하다. 3. 데이터 정렬 여부 확인 순차 탐색을 진행할 때는 데이터 정렬 여부가 필요 없지만, 이진 탐색을 할 때는 배열이 정렬되어 있는지 확인하는 것이 가장 중요하다. 데이터의 규모에 ...2025.05.08
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대한 설명2025.01.151. 선택 정렬 선택 정렬은 주어진 데이터 내에서 특정 위치에 맞는 자료를 선택해 위치를 교환하는 알고리즘입니다. 구현이 간단하고 추가적인 메모리를 사용하지 않는다는 장점이 있지만, 항상 전체 데이터를 비교하고 정렬하므로 비효율적이라는 단점이 있습니다. 2. 버블 정렬 버블 정렬은 인접한 두 항목의 값을 비교한 뒤, 기준을 만족하면 두 값을 교환하여 정렬하는 방식입니다. 개념이 단순하기에 프로그래밍하기 쉽다는 장점이 있지만, 연산의 횟수가 데이터의 크기에 따라 기하급수적으로 증가하기 때문에 정렬에 걸리는 시간이 오래 걸린다는 단점이...2025.01.15
-
배열의 정의, 선언, 초기화 및 활용2025.05.051. 배열의 정의 배열은 C언어에서 연속적인 메모리 영역에 동일한 데이터 타입의 여러 요소를 저장할 수 있는 구조입니다. 배열을 사용하면 데이터를 더욱 구조화된 방식으로 저장하고 접근할 수 있습니다. 2. 1차원 배열 선언 1차원 배열을 선언하려면 데이터 타입, 배열 이름, 배열 크기를 지정해야 합니다. 예를 들어, int arr[5]는 크기가 5인 int형 1차원 배열을 선언하는 것입니다. 3. 배열 활용 사례 배열은 시계열 데이터 저장, 문자열 처리, 정렬 및 검색 알고리즘 구현, 행렬 및 벡터 연산 등 다양한 상황에서 활용됩니...2025.05.05
-
데이터베이스 설계 과정을 단계별로 설명하시오2025.01.291. 데이터베이스 설계의 정의 및 필요성 데이터베이스 설계는 데이터가 저장되고 관리될 구조를 정의하는 과정이다. 이를 통해 데이터를 효율적으로 저장, 검색, 관리하며, 사용자와 응용 프로그램이 데이터를 신속하고 정확하게 사용할 수 있도록 한다. 데이터베이스 설계의 목표는 데이터 중복을 최소화하고, 데이터 무결성을 유지하며, 성능 최적화를 이루는 것이다. 2. 데이터베이스 설계 과정의 주요 단계 데이터베이스 설계 과정은 일반적으로 개념적 설계, 논리적 설계, 물리적 설계의 세 가지 단계로 구분된다. 개념적 설계는 데이터베이스에 저장될...2025.01.29