原始碼和文件分享 基於C 的景區旅遊資訊管理系統

2021-09-25 06:08:16 字數 1219 閱讀 7687

1 問題描述

如今生活水平提高,大家都喜歡在假期中到乙個旅遊景點參觀,在旅遊景區中經常聽到遊客打聽從乙個景點到另乙個景點的最短路徑和最短距離,這類不喜歡按照導遊圖來遊覽的遊客常常需要乙個景區管理系統來挑選自己喜歡的旅遊景點,再規劃乙個最短路徑和最短距離來遊覽,一邊節省時間跟提高旅遊效率。

2 資料結構的設計

建立乙個景區旅遊資訊管理系統,實現如下功能:

建立景區景點分布圖

通過乙個鄰接矩陣(實質是乙個二維陣列,m[i][j]表示從i到j的權值大小,為零表示沒有直達的路徑)記錄景區景點的分布圖

輸出景區景點分布圖(鄰接矩陣)

通過掃瞄鄰接矩陣輸出景區景點分布圖

輸出導遊線路圖:深度優先策略

首先通過遍歷景點,通過使用者給出的乙個入口景點c,建立乙個導遊線路圖,導遊線路圖用有向圖表示。遍歷採用深度優先策略(遞迴),這個也是正常的遊客的心理

判斷導遊線路圖有無迴路:拓撲排序(查詢入度大於1的景點)

為了使導遊線路圖能夠優化,可以通過拓撲排序判斷圖中有無迴路,若有迴路則列印輸出迴路中的景點,供人工優化

求兩個景點間的最短路徑和最短距離:floyd演算法

在導遊線路圖中,還為一些不願按線路走的遊客提供資訊服務,比如從乙個景點到另乙個景點的最短路徑和最短距離。在本線路圖中將輸出任意景點間的最短路徑和最短距離

輸出道路修建規劃圖:prime演算法

在景區建設中,道路建設是其中乙個重要的內容。道路建設首先要保證能連通所有景點,但又要花最小的代價,可以通過求最小生成樹來解決這個問題,通過prime演算法來求最小生成樹

通過修改後新增的功能:

將景區景點分布圖安裝指定的檔名(可以景區名字命名)儲存到預設的目錄file下

在這裡我遇到了路徑格式問題,通過查詢資料得以解決這個問題

從預設目錄file下讀取指定檔名的景區景點分布圖

這樣就減少了每次都要建立景區景點分布圖,也方便從已有的景區景點分布圖匯入系統,不用手動新建,實際應用中更加的方便人性化

為當前的景區新增景點道路

一開始沒有將景區景點的路徑清零,以至於新增景點道路後,再從新匯入景點較少的景區景點分布圖,再新增景點道路的時候發現之前的道路依然存在,因此在新增景點道路之前要將道路景區清零

原始碼和文件分享 基於C 的教室管理系統

1 需求分析 核心需求 實現教室管理系統,完成對學校教室的維護 查詢 預約 統計功能。程式擁有許可權控制,分為管理員和普通使用者 管理員需求 檢視某棟樓教室的概要資訊 每個教室的詳細資訊 包括教室基本資訊 預約情況 上課情況 修改某教室基本資訊 增加教室 刪除教室 增加某教室上課情況 統計某類教室的...

原始碼和文件分享 基於swift的詞法分析程式

計算正則式 讀入正規表示式 對正規表示式處理 建圖 生成 nfa 將 nfa 去除空節點 轉化為 nfa 將 nfa 轉化為 dfa 對 dfa 圖進行遍歷每個節點,獲取到每個節點通過某個字元到達哪下乙個狀態,並找到終態 構造 dfa 表 輸出顯示 驗證字串 在成功通過正規表示式構建 dfa 圖的基...

原始碼和文件分享 基於python的中文聊天機械人

前言 一 系統設計思路和框架 本次系統全部使用 python 編寫,在系統設計上遵循著配置靈活 模組化的思路,分為資料預處理器 資料處理器 執行器 深度學習模型 視覺化展示五個模組。模組間的邏輯關係大致為 資料預處理是將原始語料進行初步的處理以滿足於資料處理模組的要求 執行器是整個系統引擎分別在運轉...