2-3-4 Tree

by TUW Posted 2014. 04. 28 Updated 2014. 04. 28 Views 2419 Likes 0 Replies 0
Extra Form
작품 설명 Balanced Search Tree의 한 종류인 2-3-4 Tree를 생성하고 관리하는 C++ 프로그램입니다.
주요 기능 * 2-3-4 Tree를 생성하고 Insert, Delete, Search를 수행합니다.
* 추후 다른 곳에 활용하기 용이하도록 Tree를 생성하고 관리하는 Core 부분을 모듈화 하였습니다.
* 콘솔 환경에서 동작하며, 수동으로 명령을 입력하는 Interactive Mode, 여러 명령을 한꺼번에 수행하는 Batch Mode, 무작위 순서로 명령을 수행하여 무결성을 검증하는 Debug Mode의 세 가지 동작 모드를 지원합니다.
제작 기간 약 2주일 (2013.11.15 ~ 11.29)
관련 분야 컴퓨터 공학
제작 동기 3학년(2013-2학기)에 수강했던 '알고리즘' 교과목의 Term Project입니다.
제작 소감 규모가 그리 크지 않은 과제였으나, 프로젝트를 진행하는 것처럼 Git을 활용하여 형상관리를 하고, 문서화를 충실히 해 나가며 과제를 진행하였습니다. 또한, 무작정 코딩을 시작하지 않고, 프로그램의 흐름을 나타낸 Sequence Diagram을 먼저 작성한 뒤 그대로 코드로 옮기는 방법을 사용하여 시행착오를 최소화 하였습니다.
특히, 과제에는 명시되어 있지 않던 'Debug Mode'를 구현하여 테스트를 자동화하고, 혹시 모를 버그를 찾아내어 완벽하고 안정적인 프로그램을 만드는 데 주력하였습니다. 실제로 Debug Mode를 활용하여 미처 고려하지 못했던 버그를 발견하고, Sequence Diagram를 수정한 뒤 코드를 수정하는 순서로 디버깅을 진행하였습니다. 최종 테스트에서는 8500개 Node까지 Test를 수행하여 이상이 없음을 검증하였습니다.
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

2-3-4 Tree.png
▲ 2-3-4 Tree의 구조

Tree Node.png
▲ Tree Node

Class Diagram.png
▲ Class Diagram

Sequence Diagram - Search.png
▲ Sequence Diagram of 'Search'

Sequence Diagram - Insert.png
▲ Sequence Diagram of 'Insert'

Sequence Diagram - Delete.png
▲ Sequence Diagram of 'Delete'

Debug Depth 10.png
▲ 8500여 개 Node, 10 Max depth까지 임의의 순서로 Insert/Delete의 반복 수행을 검증하는 과정


서비스 선택
이용중인 SNS 버튼을 클릭하여 로그인 해주세요.
SNS 계정을 통해 로그인하면 회원가입 없이 댓글을 남길 수 있습니다.
댓글
?
Powered by SocialXE