Chap1.1資料結構的研究內容

卿雪發表於2020-11-03

1.1 資料結構的研究內容

1、計算機解題步驟

2、數值計算

3、非數值計算

4、小結

 

1.1 資料結構的研究內容

1.算機解題步驟

通常,用計算機解題一個問題的步驟:

①具體問題抽象為數學模型。實質:分析問題;提取操作物件;找出操作物件之間的關係;用數學語言描述→資料結構。

②設計演算法。

③程式設計、除錯、執行。

 

2.數值計算

早期,計算機主要用於數值計算。

例1求解樑架結構中的應力

數學模型:KU=M

線性方程組:\begin{pmatrix} a_{11} & \\ & a_{nn} \end{pmatrix}\times \begin{pmatrix} x_{1}\\ ... \\ x_{n} \end{pmatrix}=\begin{pmatrix} b_{1}\\ ... \\ b_{n} \end{pmatrix}

例2 :預報人口的增長情況

數學模型:微分方程(\frac{dN(t)}{dt}=rN(t)N(t)|_{t=t_{0}}=N_{0}N(t)=N_{0}e^{rt})。

首先,分析問題、提取操作物件。然後,找出操作物件之間的關係,用數學語言加以描述,建立相應數學方程。最後,求解數學方程:高斯消元法、有限元法、差分法……

特點:資料元素間的關係簡單,計算複雜。

 

3、非數值計算

隨著計算機應用領域的擴充套件,計算機被越來越多地用於非數值計算。

例1學生學籍管理系統

表1.1 學生基本資訊表
學號姓名性別籍貫專業
60214201楊陽安徽電腦科學與技術
60214202薛林福建電腦科學與技術
60214215王詩萌吉林電腦科學與技術
60214216馮子晗山東電腦科學與技術

操作物件:每位學生的資訊(學號、姓名、性別、籍貫、專業……)。

操作演算法:查詢、插入、修改、刪除等。

操作物件之間的關係:線性關係。

資料結構:線性資料結構、線性表。

類似:圖書管理系統、人事管理系統、倉庫管理系統、通訊錄……

操作物件:若干行資料記錄。

操作演算法:查詢、插入、修改、刪除等。

操作物件之間的關係:線性關係。

資料結構:線性資料結構、線性表。

例2:人機對弈問題

之所以能對弈:策略已經輸入計算機,可以根據當前棋盤格局,來預測棋局發展的趨勢,甚至最後結局。

操作物件:各種棋局狀態,即描述棋盤的格局資訊。

操作演算法:走棋,即選擇一種策略使棋局狀態發生變化(由一種格局派生出另一個格局)。

操作物件之間的關係:非線性關係、樹。

類似:檔案系統的系統結構圖

磁碟根目錄下有很多子目錄及檔案,每個子目錄裡又可以包含多個子目錄及檔案,但每個子目錄只有一個父目錄,依此類推。

本問題是一種典型的樹型結構問題,資料與資料成一對多的關係,是一種典型的非線性關係結構——樹形結構。

例3:地理資訊處理lisan

地圖導航——求最短路徑(最快路徑)。

 

 

問題:找出圖中兩點之間的最短路徑或最經濟路徑。

操作物件:各地點及路的資訊。

操作演算法:設定訊號燈,求出各個可同時通行的路的集合。

物件之間的關係:非線性關係、網狀結構。

 

4、小結

綜上所述:

①這些問題的共性是都無法用數學的公式或方程來描述,是一些“非數值計算”的程式設計問題。

②描述非數值計算問題的數學模型不是數學方程,而是諸如表、樹和圖之類的具有邏輯關係的資料。

③資料結構是一門研究非數值計算的程式設計中計算機的操作物件以及它們之間的關係和操作的學科。

要想有效地使用計算機,就必須學習資料結構

 

相關文章