好文档 - 专业文书写作范文服务资料分享网站

山东建筑大学数据结构课程设计报告

天下 分享 时间: 加入收藏 我要投稿 点赞

山东建筑大学计算机学院课程设计说明书

for(p = al[i].begin(); p != al[i].end(); p++) cout << *p << ' ';

cout <

return; }

int Graph::Begin(int i) {

if(i<1||i>n) cout<<\无该点\ Initializepos(i); if(pos==al[i].end()) return 0; else

return *pos;

}

int Graph::Nextvertex(int i) {

if(i<1||i>n) cout<<\无该点\ pos++;

if(pos!=al[i].end()) return *pos; else

return 0; }

五、测试数据

#include\#include\int b[20]; int b1[20];

14

山东建筑大学计算机学院课程设计说明书

int c[20];

int a[20]; int a1[20];

int main(void) {

int n=6; int label=2;

Graph g(n); //创建对象

g.Add(1,4).Add(1,3).Add(2,4).Add(2,5).Add(3,4).Add(3,6).Add(4,6).Add(5,6);

g.Out();

g.BFS(1,b,label,b1); cout<

g.DFS(1,a,label,a1);

for(int i=1;i<=n;i++) {

cout<<\节点\的入度为:\ cout<

cout<<\节点\的出度为:\ cout<

g.Topological(c); //执行拓扑排序

for(int i=1;i<=n;i++)

cout<<\拓扑排序的第\个元素是 \cout<

15

山东建筑大学计算机学院课程设计说明书

六、测试情况

16

山东建筑大学计算机学院课程设计说明书

双向循环链表

一、问题描述

实现双向循环链表。

二、数据结构

a1 a2 a3 a3 三、逻辑设计

1、总体思路

先构造双向循环链表的节点类,再逐步实现双向循环链表的基本函数。

2、模块划分(以图示的方法给出各个函数的调用关系) DoubleCircularNode 节点类 DoubleCircular类 DoubleCirc ular类 DoubleCircular类 DoubleCircular类 17

DoubleCircular类 DoubleCircular类 DoubleCircular类 DoubleCircular类 山东建筑大学计算机学院课程设计说明书

3、函数或类的具体定义和功能 template class DoubleCircular{

public:

DoubleCircular();//构造函数 ~DoubleCircular();//析构函数

bool IsEmpty() const;//判断是否为空 int length() const;//计算长度

bool Find(int k,T& x) const;//判断节点是否存在

int Search(const T& x) const;//查找节点

DoubleCircular& Insert(int k,const T& x);//插入节点 DoubleCircular& Delete(int k, T& x);//删除节点

void Output(ostream & out) const;//输出函数 private:

DoubleCircularNode *first; };

四、编码

//DoubleCircular.h template

class DoubleCircularNode; #include using namespace std; template class DoubleCircular{ public:

DoubleCircular();

~DoubleCircular(); bool IsEmpty() const; int length() const;

bool Find(int k,T& x) const; int Search(const T& x) const;

DoubleCircular& Insert(int k,const T& x); DoubleCircular& Delete(int k, T& x); void Output(ostream & out) const;

18

39wze3u8rd4yj364q360565jb3urvy010ys
领取福利

微信扫码领取福利

微信扫码分享