妹妹,我这次编的思想如下.docVIP

  • 2
  • 0
  • 约小于1千字
  • 约 2页
  • 2020-02-05 发布于江苏
  • 举报
妹妹,我这次编程的思想如下: 个人不太熟练用链表,所以选择了结构数组来存储数据。 首先,我把所有数据存在10个结构数组中,构成类似链表的链式结构。然后所有的操作都是在这些数据上进行的。 主要介绍一下查找路线函数。 由于采用存储结构的限制,我们得先定义几个有用的函数。 bool empty(city test[11]);这个函数是用来检测test[11]是否为空结构数组的。返回布尔数1或0. char *lastcityname(city text[11]);这是用来返回结构数组链中最后一位城市名称的。返回一个字符串。 city searchsmall(char *aa);这是用来返回与一个城市相连的没经过的城市中最小代价的城市名字的。返回一个结构体。 其中city是一个定义的结构体,我的程序中定义了十个该类型的结构数组,用来储存路线以便输出路线用。当然这是最坏情况下需要用到的存储路线数组数。其结构内容看程序。 下面详细说说我的查找路线函数的算法。以票价和最小(即费用最少)为例。 首先从端口得知城市起点,然后从已定义的该节点连接的城市中找出最省钱的一个节点并写入第一个存储数组,并在标志数组(是定义的一个数组用来表示某个城市是否已经在路线之中,在的话就不必再重新走过了)标记该节点已经不能再走了。 其实这一步可以融合到普通步骤中一起实现。(具体算法参见Dijkstra算法) 普通循

文档评论(0)

1亿VIP精品文档

相关文档