寻找有助于确定从一个终端屏幕到另一个终端屏幕的最短路径的算法

2024-04-29 14:01:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用终端客户机与大型机进行交互。整个界面基于屏幕的概念。示例工作流可能如下所示:

  • 登录屏幕:输入登录凭据,按enter键
  • 菜单屏幕:输入所需菜单项的编号(如备忘录为“6”),按回车键
  • 备忘屏幕:输入帐号,按回车键
  • 添加备忘录屏幕:输入备忘录详情等,按回车键保存,按F3键返回

我已经编写了一个python应用程序,通过这个终端接口自动处理记录。我遇到的一个困难是,有很多不同的屏幕,而我的应用程序现在对于如何从一个屏幕到另一个屏幕相当愚蠢。它可以从登录屏幕转到添加备忘录。但是,如果它发现自己在备忘录屏幕上,需要停用一个帐户,它必须注销并再次登录,因为它只知道如何从登录屏幕进入停用屏幕,而不知道如何从添加备忘录屏幕进入停用屏幕。你知道吗

因此,我想在我的应用程序中创建一个“地图”,将每个屏幕链接到它旁边的屏幕。然后,我需要一个算法,可以告诉如何从任何屏幕A到任何屏幕B在尽可能短的方式。你知道吗

我已经设置了一些屏幕对象,并将它们“关联”到旁边的屏幕。所以,我正在寻找某种我可以实现的算法,或者我可以使用的python库来计算从一个屏幕到另一个屏幕的路由。你知道吗

编辑:我意识到我在寻找某种最短路径图算法。现在让我困惑的是,我并没有真正的“距离”,我只有节点。所以,我真的不想要最短的距离,我想要最少的节点。你知道吗


Tags: 算法应用程序终端概念距离示例客户机界面