人工智能课程设计报告精选.docxVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
人工智能课程设计报告精选

人工智能课程设计报告班级:学号:学生姓名:指导老师:日期:2015年11月罗马利亚度假问题题目内容分别用代价一致的宽度优先、有限制的深度优先(预设搜索层次)、贪婪算法和A*算法求解“罗马利亚度假问题”。需求分析本题是简单的路径搜索问题读入数据建图,以及相关方法分别用代价一致的宽度优先、有限制的深度优先(预设搜索层次)、贪婪算法和A*算法求解路径打印路径,路径长度和扩展点数对比扩展点数,对比算法优劣设计设计思想(1)数据结构设计本软件用的主体数据结构就是有向图。这里我用了有向图的存储结构有两种:邻接矩阵和邻接表。下面是数据结构的声明:(1)邻接矩阵类:#001 class AdjMWGraph#002{#003private:#004SeqListVT Vertices;//顶点顺序表#005WT Edge[MaxVertices][MaxVertices];//边权值数组#006intnumOfEdges;//边的个数#007void DepthFirstSearch(const int v, int visited[], void Visit(VT item));#008void BroadFirstSearch(const int v, int visited[], void Visit(VT item));#009public:#010AdjMWGraph(const intsz = MaxVertices);//构造函数#011~AdjMWGraph(void){};//析构函数#012intNumOfVertices(void)const//取顶点个数#013{return Vertices.Size();}#014intNumOfEdges(void)const//取边的个数#015{return numOfEdges;}#016VT GetValue(const int v)const;//取顶点数值#017WT GetWeight(const int v1, const int v2)const;//取边的权值#018void InsertVertex(const VT vertex);//插入顶点#019void InsertEdge(const int v1, const int v2, WT weight);//插入边#020void DeleteVertex(const int v);//删除顶点#021void DeleteEdge(const int v1, const int v2);//删除边#022intGetFirstNeighbor(const int v)const;//取第一个邻接顶点#023intGetNextNeighbor(const int v1, const int v2)const;//取下一个邻接顶点#024void DepthFirstSearch(void Visit(VT item));//深度优先遍历#025void BroadFirstSearch(void Visit(VT item));//广度优先遍历//增加函数#026intIsVertex(VT vertex)const;/*判断顶点vertex是否是有向图G的顶点,是则返回顶点在顶点顺序表中的序号,否则返回-1。*/#027intIsVertex(int v)const;#028intIsEdge(int v1,int v2)const;/*判断第v1个顶点到第v2个顶点的边是否是有向图G的边,是则返回1,否则返回0。 */#029intInDegree(int v)const;/*在带权有向图G中求第v个顶点的入度*/#030intOutDegree(int v)const;/*在带权有向图G中求第v个顶点的出度*/#031int Degree(int v)const;/*在带权有向图G中求第v个顶点的度*/#032};邻接表的边链表的结点的结构体如下:#001 structEdgeListNode#002{#003intdest;/*与该顶点邻接的邻接顶点的序号*/#004WT weight;//权值#005EdgeListNode *next;/*指向下一条边或弧结点*/#006EdgeListNode(EdgeListNode * ptr =NULL):next(ptr){}#007EdgeListNode(int d, WT w, EdgeListNode * ptr = NULL):dest(d), weight(w), #008next(ptr){}//构造函数2#009};邻接表的顶点的结构体如下:#001 struct Vertex#002{#003VT data;//顶点信息#00

文档评论(0)

feixiang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档