본문/내용
1. 서론
컴퓨터공학과 자료구조 수업의 과제로 C언어를 이용하여 스택과 행렬 클래스를 설계하고 구현한 후 성능을 분석하는 연구를 진행했다. 스택과 행렬은 컴퓨터 과학에서 널리 사용되는 기본적인 자료구조이며 다양한 알고리즘과 응용 프로그램에 활용된다. 이 연구에서는 각 자료구조의 개념과 특징을 자세히 설명하고 효율적인 C언어 구현 방법을 제시한다. 또한 구현된 자료구조의 성능을 분석하고 비교하여 장단점을 파악하고 자료구조 선택 및 설계에 대한 이해를 높이며 실무 적용 능력을 배양하는 것을 목표로 한다.
스택은 후입선출(LIFO) 방식으로 데이터를 저장하고 접근하는 자료구조다. 새로운 데이터는 스택의 꼭대기에 추가되고 데이터를 가져올 때는 꼭대기의 데이터부터 가져온다. 주요 연산으로는 push, pop, peek, isEmpty 등이 있다. 스택은 함수 호출 스택, 깊이 우선 탐색(DFS), 역순 처리 등 다양한 알고리즘에서 중요한 역할을 한다. 이 연구에서는 배열을 이용한 스택 구현을 선택했다. 배열을 사용하면 메모리 접근 속도가 빠르다는 장점이 있지만, 크기가 고정되어 동적으로 크기를 조절하기 어렵다는 단점이 있다. 연결 리스트를 이…