총 14개
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대해2025.05.091. 선택 정렬 선택 정렬은 현재 위치에 들어가는 값을 이름에 따라 정렬하는 것으로, 현재 위치에 저장된 값의 크기가 작은지 큰지에 따라 최소 선택 정렬과 최대 선택 정렬로 나뉩니다. 최소 선택 정렬은 오름차순으로, 최대 선택 정렬은 내림차순으로 정렬됩니다. 기본 논리는 정렬되지 않은 인덱스의 맨 앞에서 시작하여 이를 포함한 정렬된 값 중 가장 작은 값을 찾는 것이고 정렬되지 않은 인덱스의 맨 앞은 정렬의 시작 위치가어야 하며 가장 작은 값을 찾으면 현재 인덱스의 값으로 대체해야 합니다. 2. 버블 정렬 버블 정렬은 매회 연속 2개...2025.05.09
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대한 설명2025.01.151. 선택 정렬 선택 정렬은 주어진 데이터 내에서 특정 위치에 맞는 자료를 선택해 위치를 교환하는 알고리즘입니다. 구현이 간단하고 추가적인 메모리를 사용하지 않는다는 장점이 있지만, 항상 전체 데이터를 비교하고 정렬하므로 비효율적이라는 단점이 있습니다. 2. 버블 정렬 버블 정렬은 인접한 두 항목의 값을 비교한 뒤, 기준을 만족하면 두 값을 교환하여 정렬하는 방식입니다. 개념이 단순하기에 프로그래밍하기 쉽다는 장점이 있지만, 연산의 횟수가 데이터의 크기에 따라 기하급수적으로 증가하기 때문에 정렬에 걸리는 시간이 오래 걸린다는 단점이...2025.01.15
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대한 설명2025.01.201. 선택 정렬 선택 정렬은 간단한 비교 기반 정렬 알고리즘으로, 배열에서 가장 작은 요소를 찾아 첫 번째 위치와 교환하는 과정을 반복한다. 이 알고리즘은 구현이 매우 간단하지만, 시간 복잡도가 O(n^2)로 크기 때문에 큰 데이터 집합에서는 비효율적일 수 있다. 2. 버블 정렬 버블 정렬은 인접한 요소를 반복적으로 비교 및 교환하는 정렬 알고리즘이다. 배열을 순차적으로 탐색하면서 인접한 요소를 비교하여 필요시 교환하며 정렬한다. 이 과정을 반복하면서 가장 큰 요소가 배열의 끝으로 이동하게 되어 결국 배열이 정렬된다. 버블 정렬 역...2025.01.20
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대해 설명하시오.2025.01.281. 선택 정렬 선택 정렬은 가장 단순한 정렬 알고리즘 중 하나로, 배열이나 리스트에서 정렬되지 않은 부분 중 가장 작은(또는 큰) 값을 선택해 순서대로 배치하는 방식입니다. 선택 정렬의 시간 복잡도는 O(n²)이며, 추가 메모리가 거의 필요하지 않는 장점이 있지만 정렬이 거의 완료된 경우에도 비교 횟수를 줄일 수 없어 비효율적입니다. 2. 버블 정렬 버블 정렬은 인접한 두 요소를 비교해 필요에 따라 위치를 바꾸는 방식으로 정렬을 수행하는 간단한 정렬 알고리즘입니다. 버블 정렬의 시간 복잡도는 최악 및 평균 O(n²)이지만, 배열이...2025.01.28
-
정렬 알고리즘 중 선택 정렬, 버블 정렬, 퀵 정렬, 병합 정렬에 대해 설명하시오2025.01.151. 선택 정렬 선택 정렬은 가장 간단한 정렬 알고리즘 중 하나이다. 리스트에서 가장 작은 항목을 선택하여 순서대로 정렬하는 방식이다. 이는 다른 정렬 알고리즘에 비해 구현이 간단하고 이해하기 쉽다. 그러나 시간 복잡도가 O(n^2)으로 큰 데이터셋에서는 비효율적이다. 2. 버블 정렬 버블 정렬은 인접한 두 요소를 비교하고 필요에 따라 위치를 교환하는 정렬 알고리즘이다. 리스트를 한 번 훑어서 가장 큰 요소를 맨 끝으로 보내는 과정을 반복하여 정렬한다. 선택 정렬과 마찬가지로 구현이 간단하지만 시간 복잡도가 O(n^2)이므로 큰 데...2025.01.15
-
[컴퓨터과학과]알고리즘_출석수업과제물2025.01.251. 오일러 경로 오일러 경로(Eulerian Trail)는 그래프에 존재하는 모든 간선을 정확히 한 번씩 방문하는 연속된 경로를 의미합니다. 각 정점의 차수가 홀수인 정점이 0개 혹은 2개 이어야 하며, 홀수점이 2개일 경우에는 홀수점에서 시작해야 합니다. 2. 배낭 문제 배낭의 용량을 초과하지 않는 범위 내에서 배낭에 들어있는 물체들의 이익의 합이 최대가 되도록 물체를 넣는 문제입니다. 물체를 쪼개서 넣을 수 있으며, 단위 무게당 이익이 가장 큰 물체부터 최대한 넣는 과정을 반복하여 해결할 수 있습니다. 3. 이진 탐색 이진 탐...2025.01.25
-
방통대 (방송통신대학교) 컴퓨터과학과 알고리즘 중간과제물2025.01.261. 배낭 문제 배낭 문제는 제한된 용량의 배낭에 물건을 담아 최대 이익을 얻는 문제이다. 이 문제에서는 물건을 쪼갤 수 있는 경우를 다루었다. 욕심쟁이 방법을 사용하여 단위 무게당 이익이 가장 높은 물건부터 배낭에 담아 최대 이익 50을 얻을 수 있다. 2. 빅오 표기법 빅오 표기법은 알고리즘의 성능을 나타내는 방법이다. O(1)은 입력 크기에 관계없이 일정한 시간이 소요되는 가장 효율적인 알고리즘이다. 보기 중에서 가장 효율적인 것은 O(1)이다. 3. 점화식 해결 주어진 세 가지 점화식을 전개하여 폐쇄형을 구하였다. ①번 점화...2025.01.26
-
비교 기반 정렬 알고리즘의 특성과 장단점2024.12.311. 선택 정렬 선택 정렬의 장점은 정렬을 위한 교환 횟수가 적다는 것이다. 내림차순으로 정렬된 데이터를 오름차순으로 만들 때 효율적이다. 단점은 정렬을 위한 비교 횟수가 많다는 것이다. 소수의 자료라도 추가되면 처리 속도가 현저히 떨어진다. 2. 버블 정렬 버블 정렬의 장점은 인접한 값만을 계속해서 비교하는 방식으로 구현이 쉽고 직관적이라는 것이다. 단점은 시간복잡도가 O(N^2)라는 것이며, 원소 개수가 많아질 경우 비교 연산이 많아져 성능이 저하된다. 3. 삽입 정렬 삽입 정렬의 장점은 최선의 경우 O(N)의 빠른 효율성을 가...2024.12.31
-
건국대학교 객체지향프로그래밍_11주차_랩실습보고서2025.05.011. 배열 정렬 이 실습에서는 배열을 정렬하는 방법을 다룹니다. 먼저 CMyPoint 클래스를 정의하고, 이를 사용하여 배열을 생성하고 정렬합니다. 그리고 ArrayData 클래스를 정의하여 동적 배열을 구현하고, 이를 사용하여 배열을 정렬하는 방법을 학습합니다. 1. 배열 정렬 배열 정렬은 프로그래밍에서 매우 중요한 기술입니다. 배열 정렬을 통해 데이터를 효율적으로 관리하고 검색할 수 있습니다. 다양한 정렬 알고리즘이 존재하며, 각각의 알고리즘은 서로 다른 시간 복잡도와 공간 복잡도를 가지고 있습니다. 따라서 문제의 특성과 요구사...2025.05.01
-
자료구조(프로그램을 자료구조와 알고리즘으로 나누어 설명)2025.01.031. 자료구조 자료구조는 데이터를 어떠한 형태로 저장하고 관리할 것인지에 대한 방법으로, 자료를 어떤 효율적 방법으로 저장할 것인가를 의미합니다. 프로그램을 구성하는 핵심 요소 중 하나입니다. 2. 알고리즘 알고리즘은 저장된 데이터를 찾거나 변형하거나 수정할 때 필요한 방법으로, 문제를 해결하기 위한 절차를 의미합니다. 프로그램을 구성하는 또 다른 핵심 요소입니다. 1. 자료구조 자료구조는 프로그래밍에서 매우 중요한 개념입니다. 데이터를 효율적으로 저장하고 관리하는 방법을 제공하기 때문에 복잡한 문제를 해결하는 데 필수적입니다. 배...2025.01.03
