91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6KB
    文件類型: .cpp
    金幣: 2
    下載: 1 次
    發布日期: 2021-09-11
  • 語言: C/C++
  • 標簽: 校園導航??

資源簡介

數據結構課程設計校園導航系統源代碼,原創。【問題描述】 以我校為例,設計一個校園導游程序,主要為來訪的客人提供信息查詢。 【基本要求】 提供至少5個景點的校園導游咨詢(包括景點介紹、景點間距離等)。 本程序的目的是為來客提供路徑咨詢和景點查詢(根據用戶指定的始點和終點輸出相應最短簡單路徑或者輸出用戶指定景點的詳細信息);系統管理員又可根據實際情況對導游圖進行修改,刪除路徑或景點。

資源截圖

代碼片段和文件信息

//頂點為0-8//頂點為0-8//頂點為0-8//頂點為0-8//頂點為0-8//頂點為0-8//頂點為0-8
#include
#include
#define?inf?0xfffffff
#define?MAXV?1000
#define?sizes?9
using?namespace?std;
int?v;
int?xy;
int?m=1;
int?maps[sizes][sizes]={
{0inf100200100infinfinfinf}
{inf0500inf200infinfinfinf}
{1005000infinfinfinf500inf}
{200infinf0infinfinfinf200}
{100200infinf0infinfinfinf}
{infinfinfinfinf0100inf500}
{infinfinfinfinf1000100inf}
{infinf500infinfinf1000700}
{infinfinf200inf500inf7000}
};
int?mapkey[sizes][sizes];
int?dis[100];
int?judge;
int?jishu=0;
void?dfs(int?xint?path[]int?d)
{
????d++;
????path[d]=x;
????dis[x]=1;
????if(x==y&&d>=0)
????{
????????jishu++;
????????cout<<“路徑“<????????for(int?i=0;i<=d;i++)
????????{
????????????printf(“%d?“path[i]);
????????}
????????cout<????}
????for(int?i=0;i????{
????????if(dis[i]==0&&maps[x][i]!=inf&&x!=i)
????????{
????????????dfs(ipathd);
????????????dis[i]=0;
????????}
????}
}
void?chakan()
{
????int?n;
????cout<<“歡迎來到查看函數\n“;
????cout<<“請輸入想要查看的標記序號\n“;
????cin>>n;
????if(n==1)
????????cout<<“宿舍“<????else?if(n==2)
????????cout<<“圖書館“<????else?if(n==3)
????????cout<<“辦公樓“<????else?if(n==4)
????????cout<<“理學院“<????else?if(n==5)
????????cout<<“文學院“<????else?if(n==6)
????????cout<<“食堂“<????else?if(n==7)
????????cout<<“工程實訓中心“<????else?if(n==8)
????????cout<<“計算機中心“<????else?if(n==9)
????????cout<<“校史館“<????system(“pause“);
????exit(0);
}
void?Dispath(int?dist[]int?path[]int?S[])//輸出從頂點v出發的所有最短路徑
{
????int?ijk;
int?apath[MAXV]d; //存放一條最短路徑(逆向)及其頂點個數
cout<<“請輸入另一個節點“< cin>>i;
while(i==v)
????{
????????cout<<“非法輸入,請重新操作“<????????cin>>i;
????}
if(S[i]==1&&i!=v)
????{
????????printf(“??從頂點%d到頂點%d的路徑長度為:%d\t路徑為:“vidist[i]);
????????d=0;
????????apath[d]=i; //添加路徑上的終點
????????k=path[i];
????????if(k==-1) //沒有路徑的情況
????????????printf(“無路徑\n“);
????????else //存在路徑時輸出該路徑
????????{
????????????while(k!=v)
????????????{
????????????????d++;
????????????????apath[d]=k;
????????????????k=path[k];
????????????}
????????????d++;
????????????apath[d]=v; //添加路徑上的起點
????????????printf(“%d“apath[d]); //先輸出起點
????????????for(j=d-1;j>=0;j--) //再輸出其他頂點
????????????????printf(“%d“apath[j]);
????????????printf(“\n“);
????????}
????}
}
void?dijkstra()
{
????cout<<“歡迎來到查詢所有路線函數\n“;
????cout<<“請輸入起點\n“;
????cin>>v;
????int?dist[MAXV]path[MAXV];
int?S[MAXV]; //S[i]=1表示頂點i在S中?S[i]=0表示頂點i在U中
int?Mindisiju;
for?(i=0;i {
????dist[i]=maps[v][i]; //距離初始化
S[i]=0; //S[]置空
if?(maps[v][i]

評論

共有 條評論