소개글
비쥬얼프로그래밍 수업때 C++ 을 했습니다.중간고사 대체 과제물이 C++ 로 연결리스트 구현이었습니다.
정말 잘 돌아가고 주석 완벽하며 따로 보고서 첨부되어 있습니다.. A+ 임다..^^
목차
1. 프로그램 개요본 프로그램은 Double Linked List를 구현한 것이다.
실질적인 Double Linked List 알고리즘은 DoublyLinkeList class에서 구현되고 있으며 각각 연결되는 리스트들은 ListElement2 class에서 정의되고 있다. 그리고 리스트에는 리스트들을 연결하는 포인트값 외에 그 리스트가 가지는 data 는 Template 으로 되어있고 이 data 에 대한 타입은 Object class 및 그 상속관계 있는 여러 class 에 의해 정의되어 있다.
보고자가 구현한 DoublyLinkedList class 의 여러 메소드 중에는 InversePut() 이라는 함수가 있는데 이는 각 list 의 link가 양쪽으로 연결되어 있는지를 Put() 만으로는 확인할 수 없기 때문에 추가해서 넣은 메소드이다.
2. ListElement2 class 의 역할과 내용
ListElement2 class 는 double linked list를 구현함에 있어서 각각 연결되는 하나의 리스트를 정의하는 class 이다.
리스트에는 다음과 같은 변수가 선언된다.
T datum;
ListElement2* pre;
ListElement2* next;
Template으로 datum(data의 단수) 의 타입이 결정되는데
본문내용
#include "main.h"#include <math.h>
///////////////////////////////////////////////////////////////////////
int main(int argc, char *argv[])
{
DoublyLinkedList<Object *> list;
DoublyLinkedList<Object *> list2;
//////////////////////////////////////////////////////////////////
cout << endl;
cout << endl;
cout << "교수님 테스트 부분...^^";
cout << endl;
for(int b=0;b<26;b++) list.Append(new Char('A'+b));
cout << *list.First() << endl;
cout << *list.Last() << endl;
list.Put(cout);
cout << endl;
list.Purge();
list.Put(cout);
list.Append(new Char('B'));
list.Append(new Char('C'));
list.Prepend(new Char('A'));
list.Put(cout);
cout << endl;
list.ExtractHead();
list.Put(cout);
cout << endl;
list.ExtractTail();
list.Put(cout);
/////////////////////////////////////////////////////////////////
cout << endl;
cout << endl;
cout << "나름대로 테스트 한부분입니다...";
cout << endl;
for(int i=0;i<26;i++)
list2.Append(new Char('A'+i));
cout << *list2.First() << endl;
cout << *list2.Last() << endl;
cout << "리스트 출력:";
list2.Put(cout);
cout << endl;
cout << "리스트 역출력:";
list2.Inver
참고 자료
없음압축파일 내 파일목록
linkedlist/Main.cpp
linkedlist/Main.h
linkedlist/OPUS4.CPP
linkedlist/OPUS4.H
linkedlist/h5.dsp
linkedlist/H5.DSW
linkedlist/Array.h
linkedlist/DoublyLinkedList.h
linkedlist/H5.NCB
linkedlist/H5.OPT
linkedlist/H5.PLG
linkedlist/LinkedList.h
linkedlist/보고서.hwp
linkedlist/
linkedlist/Main.h
linkedlist/OPUS4.CPP
linkedlist/OPUS4.H
linkedlist/h5.dsp
linkedlist/H5.DSW
linkedlist/Array.h
linkedlist/DoublyLinkedList.h
linkedlist/H5.NCB
linkedlist/H5.OPT
linkedlist/H5.PLG
linkedlist/LinkedList.h
linkedlist/보고서.hwp
linkedlist/
이 자료와 함께 구매한 자료
- [컴퓨터 자료구조] 프로그램 자료구조 총망라 2페이지
- [자료구조론]트리(Tree) 15페이지