총 271개
-
정렬 알고리즘의 시간복잡도 및 장단점 분석2025.11.141. 버블 정렬 버블 정렬은 인접한 데이터 간의 비교와 교환을 통해 정렬하는 기본적인 알고리즘입니다. 구현이 간단하고 이해하기 쉬워 초기 프로그래밍 교육에 자주 사용됩니다. 그러나 시간복잡도가 O(n²)로 데이터 크기가 크거나 정렬이 빈번한 경우 비효율적입니다. 이미 정렬된 데이터에 대해서도 불필요한 연산을 반복하는 단점이 있어 실제 복잡한 애플리케이션에서는 잘 사용되지 않습니다. 2. 선택 정렬 선택 정렬은 최소값 또는 최대값을 선택하여 정렬되지 않은 부분의 맨 앞 요소와 교환하는 방식입니다. 데이터 교환 횟수가 버블 정렬보다 적...2025.11.14
-
비교 기반 정렬 알고리즘의 특성과 장단점2024.12.311. 선택 정렬 선택 정렬의 장점은 정렬을 위한 교환 횟수가 적다는 것이다. 내림차순으로 정렬된 데이터를 오름차순으로 만들 때 효율적이다. 단점은 정렬을 위한 비교 횟수가 많다는 것이다. 소수의 자료라도 추가되면 처리 속도가 현저히 떨어진다. 2. 버블 정렬 버블 정렬의 장점은 인접한 값만을 계속해서 비교하는 방식으로 구현이 쉽고 직관적이라는 것이다. 단점은 시간복잡도가 O(N^2)라는 것이며, 원소 개수가 많아질 경우 비교 연산이 많아져 성능이 저하된다. 3. 삽입 정렬 삽입 정렬의 장점은 최선의 경우 O(N)의 빠른 효율성을 가...2024.12.31
-
퀵 알고리즘으로 정렬하는 코드를 자바 또는 파이썬으로 설계하시오2025.01.191. 퀵 정렬 알고리즘 퀵 정렬 알고리즘은 분할 정복 기법을 사용하는 효율적인 정렬 알고리즘입니다. 이 알고리즘은 배열을 피벗을 기준으로 두 부분으로 나누고, 각 부분을 재귀적으로 정렬합니다. 이 코드는 파이썬으로 구현된 퀵 정렬 알고리즘으로, 배열 [30, 60, 12, 54, 2, 45]를 정렬하는 예제입니다. 1. 퀵 정렬 알고리즘 퀵 정렬 알고리즘은 효율적이고 널리 사용되는 정렬 알고리즘 중 하나입니다. 이 알고리즘은 분할 정복 기법을 사용하여 배열을 작은 부분으로 나누고, 각 부분을 정렬한 뒤 다시 합치는 방식으로 동작합니...2025.01.19
-
알고리즘 복잡도 표현법과 정렬 알고리즘 성능 분석2025.11.171. 알고리즘 복잡도 표기법 알고리즘의 복잡도를 표기하는 방법은 빅-오, 빅-오메가, 세타 세 가지가 있다. 빅-오 표기법은 최악의 경우 복잡도를 나타내며 상한선을 보여준다. 빅-오메가 표기법은 최선의 경우 복잡도를 나타내며 하한선을 보여준다. 세타 표기법은 평균 복잡도를 나타낸다. 이 표기법들은 입력 크기에 따른 알고리즘의 실행 시간 또는 공간 요구사항을 기술하는 방법으로, 알고리즘의 성능을 분석하고 다양한 알고리즘 간의 효율성을 비교하는 데 중요한 도구이다. 2. 버블 정렬(Bubble Sort) 버블 정렬은 배열의 모든 원소를...2025.11.17
-
건국대학교 객체지향프로그래밍_11주차_랩실습보고서2025.05.011. 배열 정렬 이 실습에서는 배열을 정렬하는 방법을 다룹니다. 먼저 CMyPoint 클래스를 정의하고, 이를 사용하여 배열을 생성하고 정렬합니다. 그리고 ArrayData 클래스를 정의하여 동적 배열을 구현하고, 이를 사용하여 배열을 정렬하는 방법을 학습합니다. 1. 배열 정렬 배열 정렬은 프로그래밍에서 매우 중요한 기술입니다. 배열 정렬을 통해 데이터를 효율적으로 관리하고 검색할 수 있습니다. 다양한 정렬 알고리즘이 존재하며, 각각의 알고리즘은 서로 다른 시간 복잡도와 공간 복잡도를 가지고 있습니다. 따라서 문제의 특성과 요구사...2025.05.01
-
방통대 알고리즘 출석과제물2025.01.241. 빅오 함수 입력 크기 n에 대한 빅오 함수들을 성능 관점에서 가장 나쁜 것부터 차례대로 나열하면 O(2^n) -> O(n^3) -> O(n^2) -> O(nlogn) -> O(n) -> O(logn) -> O(1)이다. 수행시간에 비례한 효율성을 고려할 경우 n의 값이 증가하면 연산 시간도 증가하며, 뚜렷한 차이를 보인다. 따라서 시간 복잡도 함수식의 결과로 수행시간의 효율성을 증명할 수 있다. 2. 이진 탐색 이진 탐색의 점화식은 T(n) = O(1)일 때 n=1, T(n/2) + O(1)일 때 n>=2이며, 폐쇄형은 T(n...2025.01.24
-
2023년 1학기 알고리즘 출석수업 만점 받은 과제물2025.01.241. 이진 탐색 이진 탐색은 정렬된 상태의 데이터 중 원하는 값을 탐색하는 알고리즘이다. 이진 탐색은 먼저 주어진 데이터 중 중앙값이 목표 값과 일치하는 지 비교한다. 그리고 데이터가 정렬되어 있음을 이용해, 중앙값이 목표 값보다 작다면 중앙값보다 큰 값을 지니는 쪽, 중앙값이 목표 값보다 크다면 중앙값보다 작은 값을 지니는 쪽에 대해 다시 중앙값과 목표 값을 비교하며 데이터를 절반씩 줄여가는 과정을 반복하며 원하는 값을 찾는다. 2. 퀵 정렬 퀵 정렬은 데이터 중 하나의 값을 피벗으로 뽑고 데이터를 그 값보다 큰 쪽과 작은 쪽으로...2025.01.24
-
방통대 방송대 알고리즘 출석수업과제물 A+2025.01.251. 알고리즘 성능 분석 입력 크기 n에 대한 빅오 함수들을 성능 관점에서 가장 나쁜 것부터 차례대로 나열하면 O(2^n) → O(n^3) → O(n^2) → O(nlogn) → O(n) → O(logn) → O(1)이다. 2. 점화식과 폐쇄형 이진 탐색의 점화식은 T(n) = Θ(1), n=1 = T(n/2) + Θ(1), n>=2 이며 폐쇄형은 T(n) = Θ(logn)이다. 퀵 정렬 최악의 경우 점화식은 T(n) = Θ(1), n=1 = T(n-1) + Θ(n), n>=2 이며 폐쇄형은 T(n) = Θ(n^2)이다. 합병 정렬...2025.01.25
-
채우기 핸들을 이용하여 데이터를 입력하는 방법과 엑셀에서의 정렬방법에 대해 설명하시오2025.05.121. 채우기 핸들을 이용한 데이터 입력 셀에 숫자나 문자를 입력하고 클릭을 하면 검정색 테두리가 나온다. 평소에 엑셀의 커서는 하얀색 십자가로 보이는데 칸을 클릭한 후 가장 자리에 가져다 되면 까만색 십자가가 보인다. 그 상태로 마우스의 왼쪽 버튼을 누르고 쭉 누르면 데이터가 복사되어 나온다. [Ctrl]을 누른 상태로 하면 1씩 증가하는 값을 얻을 수 있다. 두 셀을 클릭해서 채우기 핸들을 하면 두 셀의 차이값만큼 증가된 값을 다음 셀에서 얻을 수 있다. 숫자 데이터, 사용자 지정 목록, 문자 데이터, 혼합 데이터, 날짜 데이터 ...2025.05.12
-
젠포트 조건식 및 정렬 메커니즘 분석2025.11.161. 젠포트 8가지 조건식 젠포트는 시가총액을 기준으로 8가지 조건식을 제공합니다. 비율과 순위 조건식이 있으며, 각각 내림차순과 오름차순 옵션을 가집니다. 비율 조건식은 최소값에 0점, 최대값에 100점을 부여하고, 순위 조건식은 순위를 매깁니다. 비율내림차순, 비율오름차순, 순위내림차순, 순위오름차순 등 명시적 정렬 옵션이 있는 조건식도 포함됩니다. 2. 이중정렬 메커니즘 젠포트는 구조상 정렬을 여러 번 수행할 수 있습니다. 비율 조건식에서 외부 내림차순이 있으면 정렬이 반전되고, 순위 조건식에서 외부 오름차순이 있으면 정렬이 ...2025.11.16
