资源描述:
《中国地质大学(武汉)数据结构报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、PracticeReportforDataStructuresandAlgorithmAnalysisDataStructuresCourseReportCandidate:吴泽光StudentNumber:20121001873Major:CommunicationEngineeringSupervisor:WurangzhongChinaUniversityofGeosciences(Wuhan)Wuhan,Hubei430074,P.R.ChinaOctober18,2012ChinaUniversityofGeosciences,FacultyofMechanic
2、sandElectronicInformation一、线性表(用链表实现):1、目的:通过程序的运用,使得线性表的插入、删除等功能更加容易实现,节约了时间和精力。2、程序说明:typedefstructLNode*LinkList;typedefintStatus;structLNode{intdata;structLNode*next;};定义结构体。voidInsert(LinkList&L,inti,intb);插入函数。voidDelete(LinkList&L,inti);删除函数。intLength(LinkList&L);输出长度。voidPrint_Lin
3、kList(LinkList&L);输出线性表内容。插入函数:voidInsert(LinkList&L,inti,intx){LinkListp,q;p=L;q=(LinkList)malloc(sizeof(LNode));q->data=x;if(i==1){q->next=p;L=q;}else{while(--i>1)p=p->next;q->next=p->next;p->next=q;}}3、运行过程:二、堆栈和队列1、目的:通过程序的运用,使得队列的插入、删除等功能更加容易实现,节约了时间和精力。2、程序说明:structMy_Queue{intEleme
4、nt[MaxLength];intLength;inthead;intrear;};定义结构体。intHead_Queue(My_Queue&Que);功能:返回队列头结点的值参数:Que,引用类型,指向队列的头。voidPrint_Queue(My_Queue&Que);输出队列的内容。voidIn_Queue(My_Queue&Que,intElement);输入队列。voidOut_Queue(My_Queue&Que,int&Element);输出队列。主函数:voidmain(){My_QueueMy_Fst_Que;My_Fst_Que.Length=0;in
5、tdata=0;My_Fst_Que.head=My_Fst_Que.rear=0;Input_Queue(My_Fst_Que,2);Print_Queue(My_Fst_Que);Input_Queue(My_Fst_Que,4);Print_Queue(My_Fst_Que);Input_Queue(My_Fst_Que,6);Print_Queue(My_Fst_Que);Input_Queue(My_Fst_Que,8);Print_Queue(My_Fst_Que);Input_Queue(My_Fst_Que,10);Print_Queue(My_Fst_Q
6、ue);Out_Queue(My_Fst_Que,data);Print_Queue(My_Fst_Que);Out_Queue(My_Fst_Que,data);Print_Queue(My_Fst_Que);Out_Queue(My_Fst_Que,data);Print_Queue(My_Fst_Que);Out_Queue(My_Fst_Que,data);data=Head_Queue(My_Fst_Que);Print_Queue(My_Fst_Que);}3、运行过程:三、字符串的模式匹配1、目的:输入目标串和模式串,运用KMP算法判断是否匹配。2、程序说明
7、:typedefstructStringString_KMP;structString{char*data;intlength;};定义结构体。intKMPMatch(String_KMP&s,String_KMP&t,intnext[]);功能:用于检测返回值情况。主函数:voidmain(){String_KMPs,p1;int*next_KMP,position=0;p1.data="&&aaaaa";p1.length=strlen(p1.data);s.data="&&&aaaaabaabcwwww";s.lengt