총 17개
-
자료구조 단순연결리스트 변형된 연결리스트 과제 소스코드 구현2025.05.051. 단순 연결 리스트 단순 연결 리스트는 가장 기본적인 선형 자료구조 중 하나입니다. 이 코드에서는 단순 연결 리스트의 기본 연산인 삽입, 삭제, 탐색, 역순 등을 구현하고 있습니다. 각 연산은 리스트의 헤드 포인터와 선행 노드를 인자로 받아 동작하며, 동적 메모리 할당을 통해 새로운 노드를 생성합니다. 2. 원형 연결 리스트 원형 연결 리스트는 마지막 노드가 첫 번째 노드를 가리키는 특별한 형태의 연결 리스트입니다. 이 코드에서는 원형 연결 리스트의 삽입, 삭제, 탐색 등의 기본 연산을 구현하고 있습니다. 원형 연결 리스트의 경...2025.05.05
-
다음 트리에 관련된 문제를 풀이하여 제출하시오2025.05.011. 이진 트리의 배열 및 연결리스트 표현 이진 트리를 배열과 연결리스트를 이용하여 나타내는 방법에 대해 설명합니다. 배열을 이용하면 부모-자식 관계를 쉽게 파악할 수 있고, 연결리스트를 이용하면 동적 메모리 할당이 가능합니다. 2. 이진 트리의 순회 방법 이진 트리의 전위 순회, 중위 순회, 후위 순회 방법을 설명합니다. 전위 순회는 루트-왼쪽-오른쪽, 중위 순회는 왼쪽-루트-오른쪽, 후위 순회는 왼쪽-오른쪽-루트 순으로 노드를 방문합니다. 3. 최소 신장 트리 알고리즘 프림 알고리즘과 크루스칼 알고리즘을 이용하여 주어진 그래프에...2025.05.01
-
[자료구조] 자체참조구조체 소스코드 구현2025.05.051. 자체 참조 구조체 자체 참조 구조체는 자신과 같은 구조체 형태를 가진 다른 구조체를 가리키는 구조체입니다. 이 코드에서는 student 구조체를 정의하고, 각 student 구조체 객체는 다음 student 구조체를 가리키는 포인터 next를 가지고 있습니다. 이를 통해 연결 리스트 형태로 student 구조체들을 연결할 수 있습니다. 1. 자체 참조 구조체 자체 참조 구조체는 데이터 구조에서 매우 중요한 개념입니다. 이는 구조체 내부에 자신과 동일한 타입의 멤버 변수를 포함하는 구조체를 의미합니다. 이러한 구조체는 복잡한 데...2025.05.05
-
자료구조 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
-
자료구조_연결형 자료구조를 이용하여 다항식 2개를 입력받아 다항식의 곱셈 및 덧셈을 구하여 결과를 출력해 주는 프로그램을 C언어를 이용해서 구현 하세요2025.01.191. 다항식 연결 리스트 구현 이 프로그램은 다항식을 연결 리스트로 구현하여 두 개의 다항식을 입력받고, 이를 덧셈과 곱셈하여 결과를 출력하는 C 프로그램입니다. 다항식의 차수는 최대 3까지로 제한되며, 계수는 정수로 처리됩니다. 프로그램은 다항식 항목을 나타내는 Term 구조체와 다항식 자체를 나타내는 Polynomial 구조체를 정의하고, 항목 생성, 추가, 덧셈, 곱셈, 출력 등의 기능을 구현하고 있습니다. 2. 다항식 덧셈 알고리즘 다항식 덧셈 알고리즘은 두 다항식의 각 항을 차수 순으로 비교하면서 결과 다항식에 항목을 추가...2025.01.19
-
c언어로 쉽게 풀어쓴 자료구조 개정 3판 6장(연결리스트) 연습문제 (해설 포함)2025.05.161. 원형 연결 리스트 원형 연결 리스트는 마지막 노드의 포인터가 첫 번째 노드를 가리킨다. 2. 배열 n번째 요소를 찾는다는 것은 특정한 값을 탐색한다는 것이 아니다. 즉 특정 요소로 접근하겠다는 의미인데, 이를 가장 빠르게 할 수 있는 것은 당연히 배열이다. 배열은 인덱스를 통해 특정 요소로 가장 빠르게 접근할 수 있는 자료구조다. 한 번에 접근이 가능하므로 당연히 시간복잡도는 O(1)이다. 3. 단순 연결리스트 단순 연결리스트의 마지막 노드의 링크(link) 필드는 항상 NULL을 가리킨다. 따라서 last->link==NUL...2025.05.16
-
자료구조 실습 코드: 희소행렬, 다항식, 연결리스트, 스택2025.11.141. 희소 행렬(Sparse Matrix) 희소 행렬은 대부분의 원소가 0인 행렬을 효율적으로 표현하기 위한 자료구조입니다. 제시된 코드에서는 term 구조체를 사용하여 0이 아닌 원소만 저장합니다. smTranspose 함수는 행렬을 전치하고, smPrint 함수는 행렬을 출력하며, smAdd 함수는 두 희소 행렬을 더합니다. 각 원소는 행(row), 열(col), 값(value)으로 구성되어 메모리를 절약합니다. 2. 다항식 표현 및 연산 다항식은 배열 또는 연결리스트로 표현할 수 있습니다. 배열 기반 구현에서는 polynomi...2025.11.14
-
C언어 구조체와 포인터를 이용한 연결 리스트 구현2025.11.131. 구조체(Structure) C언어에서 구조체는 여러 데이터 타입을 하나의 단위로 묶어서 관리하는 자료구조입니다. 본 예제에서는 node 구조체를 정의하여 문자 데이터(char data)와 다음 노드를 가리키는 포인터(struct node *link)를 포함시켜 연결 리스트의 기본 단위로 사용하고 있습니다. 2. 포인터(Pointer) 포인터는 메모리 주소를 저장하는 변수로, 동적 메모리 할당과 자료구조 구현에 필수적입니다. 본 코드에서는 malloc()을 통해 동적으로 메모리를 할당받고, 포인터 변수 a, b, c가 각 노드를...2025.11.13
-
연결형 자료구조를 이용한 다항식의 계산 프로그래밍2025.01.131. 다항식 계산 프로그래밍 이 프로그래밍 과제에서는 연결형 자료구조를 이용하여 다항식의 계산을 구현하였습니다. 다항식의 항을 표현하는 구조체를 정의하고, 다항식을 입력받아 연결 리스트로 구성하는 함수, 두 다항식을 더하는 함수, 두 다항식을 곱하는 함수 등을 구현하였습니다. 이를 통해 연결 리스트, 포인터 연산, 알고리즘 설계의 중요성을 배웠고, 프로그래밍 경험을 쌓을 수 있었습니다. 2. 연결 리스트 이 프로그래밍 과제에서는 다항식을 연결 리스트로 표현하였습니다. 연결 리스트는 동적 메모리 할당을 통해 구현되며, 각 항목은 다음...2025.01.13
-
C로 배우는 자료구조 6장 연습문제 - 큐와 데크2025.11.161. 큐(Queue)의 개념과 특성 큐는 FIFO(First In First Out) 선입선출 구조의 자료구조로, front에서는 삭제, rear에서는 삽입이 일어난다. 일상생활에서 줄 서기, 택시 정거장 등에서 찾을 수 있다. 선형 큐에서는 rear가 마지막 인덱스에 도달하면 포화 상태가 되는 문제가 발생하며, 이를 해결하기 위해 원형 큐를 사용한다. 원형 큐의 공백 상태는 front == rear이고, 포화 상태는 front == (rear + 1) mod n이다. 2. 원형 큐(Circular Queue)의 구현 원형 큐는 선...2025.11.16
