총 19개
-
알고리즘 복잡도 표현법과 정렬 알고리즘 성능 분석2025.11.171. 알고리즘 복잡도 표기법 알고리즘의 복잡도를 표기하는 방법은 빅-오, 빅-오메가, 세타 세 가지가 있다. 빅-오 표기법은 최악의 경우 복잡도를 나타내며 상한선을 보여준다. 빅-오메가 표기법은 최선의 경우 복잡도를 나타내며 하한선을 보여준다. 세타 표기법은 평균 복잡도를 나타낸다. 이 표기법들은 입력 크기에 따른 알고리즘의 실행 시간 또는 공간 요구사항을 기술하는 방법으로, 알고리즘의 성능을 분석하고 다양한 알고리즘 간의 효율성을 비교하는 데 중요한 도구이다. 2. 버블 정렬(Bubble Sort) 버블 정렬은 배열의 모든 원소를...2025.11.17
-
비교 기반 정렬 알고리즘의 특성과 장단점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
-
C언어 단어 정렬 소스코드2025.04.271. C 프로그래밍 언어 C 프로그래밍 언어는 1970년대 초반에 개발된 범용 프로그래밍 언어로, 시스템 프로그래밍, 응용 프로그래밍, 임베디드 시스템 프로그래밍 등 다양한 분야에서 사용되고 있습니다. 이 프로그램은 C 언어를 사용하여 사용자가 입력한 단어들을 사전 순서대로 정렬하고, 전체 단어 수와 중복을 제외한 단어 수를 출력하는 기능을 구현하고 있습니다. 2. 문자열 처리 이 프로그램은 사용자가 입력한 문장을 공백 문자를 기준으로 단어를 분리하고, 분리된 단어들을 사전 순서대로 정렬하는 기능을 구현하고 있습니다. 이를 위해 C...2025.04.27
-
[자료구조] 하나의 프로그램을 자료구조와 알고리즘으로 나누어 설명하시오2025.05.161. 자료구조 자료구조란 컴퓨터에서 자료를 정리하고 조직화하는 구조를 의미한다. 어떠한 자료를 정리할 때 자료에 따른 적절한 자료구조가 있다. 이 자료구조에는 그에 따른 알고리즘이 따라오기 마련이다. 2. 알고리즘 알고리즘이란 어떠한 문제를 해결하는 절차이다. 컴퓨터가 문제를 해결하는 방법을 장치가 이해할 수 있도록 언어로 정밀하게 기술한 것이다. 대부분의 컴퓨터 프로그램은 데이터를 처리하며 이들 자료는 자료구조를 사용해 표현하고 저장된다. 또한 여기에는 알고리즘이 필요하다. 3. 육면체 부피 계산 프로그램 width, length...2025.05.16
-
자료구조 1학기 중간시험2025.05.051. 1차원 정수배열 정렬 1차원 정수배열 x[10]을 0으로 초기화하고 내림차순으로 정렬하는 함수를 작성하고 메인프로그램을 완성하는 문제입니다. 함수의 첫 번째 매개변수는 배열의 주소이고, 두 번째 매개변수는 새로운 값입니다. 2. 구조체 배열 입력 struct student {char name[10], int student_number, char depart[10];}; 구조체를 정의하고, struct student stu[10]에 키보드에서 값을 넣는 함수를 작성하고 메인 프로그램을 완성하는 문제입니다. 3. 단순 연결리스트 ...2025.05.05
-
C언어 성적 처리 프로그램 실습2025.11.131. C언어 포인터와 배열 프로그램에서 포인터를 활용하여 2차원 배열의 행과 열에 접근합니다. ps 포인터는 점수 테이블의 특정 행을 가리키고, pa 포인터는 평균값 배열을 가리킵니다. 포인터 연산(ps+j)을 통해 배열 요소에 접근하고 값을 저장하는 방식으로 동적 메모리 접근을 구현합니다. 2. 데이터 입출력 처리 scanf 함수로 5명 학생의 국어, 영어, 수학 성적을 입력받고, printf 함수로 형식화된 출력을 수행합니다. fflush(stdin)으로 입력 버퍼를 비우고, %10s, %10d, %10.2f 등의 형식 지정자를...2025.11.13
-
자연어처리 대표논문 읽기 과제2025.01.121. 신경 기계 번역 신경 기계 번역은 최근에 제안된 기계 번역 접근법으로, 기존의 통계 기계 번역과 달리 단일 신경망을 구축하여 번역 성능을 극대화하는 것을 목표로 합니다. 본 논문에서는 기존 신경 기계 번역 모델의 한계를 극복하기 위해 RNN 검색 모델을 제안하였고, 이를 통해 소스 문장의 관련 단어나 주석과 대상 단어를 올바르게 정렬할 수 있게 되었습니다. 실험 결과 제안된 모델이 기존 인코더-디코더 모델을 크게 능가하고 문장 길이에 더 견고한 것으로 나타났습니다. 2. 기계 번역 기계 번역은 소스 문장 x의 조건부 확률 p(...2025.01.12
