
총 36개
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대한 설명2025.01.151. 선택 정렬 선택 정렬은 주어진 데이터 내에서 특정 위치에 맞는 자료를 선택해 위치를 교환하는 알고리즘입니다. 구현이 간단하고 추가적인 메모리를 사용하지 않는다는 장점이 있지만, 항상 전체 데이터를 비교하고 정렬하므로 비효율적이라는 단점이 있습니다. 2. 버블 정렬 버블 정렬은 인접한 두 항목의 값을 비교한 뒤, 기준을 만족하면 두 값을 교환하여 정렬하는 방식입니다. 개념이 단순하기에 프로그래밍하기 쉽다는 장점이 있지만, 연산의 횟수가 데이터의 크기에 따라 기하급수적으로 증가하기 때문에 정렬에 걸리는 시간이 오래 걸린다는 단점이...2025.01.15
-
R언어 기본 용어 정리 과제2025.04.261. 스칼라(scalar) 스칼라는 단순히 객체에 하나의 값을 할당했을 때, 바로 그 할당되는 값을 지칭합니다. 스칼라값에는 실수, 문자열, 논리값(TRUE, FALSE)이라는 3가지 자료형이 있으며, 벡터와는 달리 하나의 값만을 지정해준다는 특징이 있습니다. 2. 벡터(vector) 벡터는 같은 자료형을 가진 스칼라값들을 순서를 가지고 일렬로 나열한 자료구조입니다. R에서는 c() 함수를 이용하여 여러 개의 데이터를 입력할 수 있으며, 벡터의 각 요소를 반복해서 추출하고 싶을 때는 times와 each를 사용할 수 있습니다. 3....2025.04.26
-
주로 많이 쓰이는 트리에는 여러 종류의 트리가 사용된다. 이진트리와 이진탐색트리가 쓰이는 사례를2025.01.221. 이진 트리 이진 트리는 모든 노드 차수가 2 이하인 트리로 공집합 혹은 하나의 뿌리 노드에서 왼쪽 부분의 트리와 오른쪽 부분으로 이루어진 유한한 집합 구조를 의미한다. 이러한 이진 트리에는 순서 트리, 오리엔티드 트리, 포화 이진 트리, 완전 이진 트리, 사향 이진 트리 등 여러 가지 종류가 있다. 이진 트리는 산술 표현식 등에 사용되는 사례가 있다. 2. 이진 탐색 트리 이진 탐색 트리는 이진 트리에서 모든 노드가 서로 다른 키 값을 가지고 이진 트리에서 임의의 노드 n에 대해 n의 키 값이 항상 n의 왼쪽 자식 노드의 키 ...2025.01.22
-
인하대 데이터구조 12주차 Homework 4 크루스칼 알고리즘2025.05.031. 크루스칼 알고리즘 크루스칼 알고리즘은 가중치가 있는 무방향 그래프에서 최소 신장 트리를 찾는 알고리즘입니다. 이 알고리즘은 다음과 같은 단계로 진행됩니다: 1) 그래프의 정점 수와 간선 수를 입력받습니다. 2) 그래프를 구성하고 초기화합니다. 3) 간선들을 가중치 순으로 정렬합니다. 4) 다음 간선이 사이클을 만들지 않으면 결과에 추가합니다. 5) 결과에 포함된 간선의 수가 정점 수 - 1이 되면 종료합니다. 6) 최소 신장 트리의 간선과 가중치를 출력합니다. 1. 크루스칼 알고리즘 크루스칼 알고리즘은 최소 신장 트리(Mini...2025.05.03
-
파이썬프로그래밍 ) 리스트에 대해 설명하고, 리스트를 만드는 방법과 리스트 자르기를 예를 들어 설명하시오.2025.01.191. 리스트 리스트는 아이템들의 수집(collection)을 위해 사용되는 기본 데이터 구조 중 하나이다. 이렇게 리스트 내에 저장된 아이템들은 원소(element)라고 불린다. 파이썬에서 아이템을 저장하고 다루는 방법은 딕셔너리나 튜플 등 여러 가지가 있지만 리스트(list)와 가장 많이 비교되는 것은 배열(array)이다. 리스트와 배열은 원소를 조작하는 방식이나 목적이 비슷하여 상호 호환 가능하지만, 메모리 관리, 원소의 조작 및 사칙연산 등 몇 가지 부분에서는 차이점을 보인다. 2. 리스트 생성 방법 리스트의 생성 방법은 대...2025.01.19
-
인하대 데이터구조 9주차 Homework3 Maxheap2025.05.031. Max Heap 이 프레젠테이션은 Max Heap 자료구조를 다루는 프로그램을 작성하는 방법에 대해 설명합니다. 프로그램은 사용자로부터 명령을 받아 Max Heap에 대한 다양한 작업을 수행할 수 있습니다. 이러한 작업에는 요소 삽입, 삭제, 최대값 출력, 특정 순위 요소 삭제 및 출력, 전체 요소 출력 등이 포함됩니다. 프로그램은 입력 오류 처리 기능도 포함하고 있어 잘못된 입력이 들어오는 경우에도 계속해서 입력을 받을 수 있습니다. 1. Max Heap Max Heap은 완전 이진 트리 구조를 가지며, 각 노드의 값이 자식...2025.05.03
-
프림(Prim)의 최소 신장 트리 알고리즘(PrimMST) 수행 과정2025.05.011. 프림(Prim)의 최소 신장 트리 알고리즘 프림의 최소 신장 트리 알고리즘은 그래프에서 최소 비용의 신장 트리를 찾는 알고리즘입니다. 이 알고리즘은 임의의 시작점에서 시작하여 단계적으로 정점을 추가하면서 최소 비용의 신장 트리를 구축합니다. 이 과정을 단계별로 자세히 설명하면 다음과 같습니다. 1. 프림(Prim)의 최소 신장 트리 알고리즘 프림의 최소 신장 트리 알고리즘은 그래프 이론에서 널리 사용되는 중요한 알고리즘입니다. 이 알고리즘은 가중치가 있는 무방향 그래프에서 최소 비용의 신장 트리를 찾는 데 사용됩니다. 프림 알...2025.05.01
-
변수의 기능, 선언 방법, 작성 규칙 및 데이터 형의 종류2025.01.131. 변수의 기능 변수는 프로그래밍 언어에서 데이터를 저장하는 기본 단위로, 임시 저장소 역할을 합니다. 변수를 통해 프로그램은 실행 중 필요한 데이터에 쉽게 접근하고 수정 및 재활용할 수 있습니다. 변수의 핵심 기능 중 하나는 데이터의 가변성 관리입니다. 변수는 프로그램 실행 도중 값이 바뀔 수 있어 같은 코드를 다양한 상황에 유연히 적용할 수 있습니다. 변수는 코드 내 데이터 추상화를 가능케 해 복잡한 프로그램을 단순하고 이해하기 쉽게 만듭니다. 또한 변수는 함수나 메서드 간 데이터 전달 매개체 역할도 합니다. 2. 변수 선언과...2025.01.13
-
C언어 1 - 재귀함수와 포인터의 개념 및 활용2025.01.151. 재귀함수 재귀함수는 함수가 자기 자신을 호출하여 문제를 해결하는 기법입니다. 이 기법은 큰 문제를 작은 문제로 나누어 해결할 수 있게 해주며, 특히 반복적이고 계층적인 구조의 문제를 해결하는 데 유용합니다. 재귀함수를 사용할 때는 기본 조건(base case)과 재귀 조건(recursive case)을 명확히 정의해야 합니다. 재귀함수의 대표적인 사용 사례로는 팩토리얼 계산, 피보나치 수열 계산, 트리 탐색 등이 있습니다. 2. 포인터 포인터는 다른 변수의 메모리 주소를 저장하는 변수로, 간접적으로 변수에 접근하고 조작할 수 ...2025.01.15
-
관계 데이터 모델의 개념과 특징2025.01.081. 데이터 모델링 데이터 모델링은 데이터베이스 설계의 핵심과정으로, 현실세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정이다. 데이터 모델링을 쉽게 할 수 있는 도와주는 도구가 바로 데이터 모델인데, 개념적 데이터 모델과 논리적 데이터 모델이 있다. 논리적 데이터 모델은 개념적 구조를 논리적 데이터 모델링을 통해 데이터베이스의 논리적 구조로 표현하는 도구이다. 2. 관계 데이터 모델 관계 데이터 모델은 데이터와 이들 데이터 사이의 관계를 나타내기 위해 테이블의 모임을 사용한다. 일반적으로 테이블의 각 행은 일...2025.01.08