1、用計算機解決實際問題時,步驟:首先分析實際問題,從中抽象出乙個適當的數學模型,然後設計乙個解決此數學模型的演算法,最後程式設計,除錯,測試。
尋求資料模型的實質是分析問題,從中提取出計算機處理的物件,並找出這些物件之間的關係,然後用數學的語言加以描述。
關鍵:分析問題中所用到的資料是如何組織的,研究資料之間存在什麼樣的關係。
2、由於資料必須在計算機中處理,因此不能侷限於資料本身的數學問題的研究,還必須考慮資料的物理結構,即資料在計算機中的儲存結構。
3、基本概念與術語:
資料:資料是指能輸入到計算機中並能被計算機處理的一切物件。它能夠被計算機識別、儲存和加工處理。
資料元素:是資料的基本單位。在不同條件下,資料元素又可稱為元素、節點、頂點、記錄等。有時,乙個資料元素可由若干個資料項組成。
資料物件:是具有相同性質的資料元素的集合,是資料的乙個子集。
資料結構:相互之間存在著一種或多種關係的資料元素的集合。資料元素之間不會孤立,他們之間的關係稱為結構;
結構:集合結構(鬆散)、線性結構(一對一)、樹形結構(一對多)、圖形結構(多對多)。
資料結構形式定義為:資料結構是乙個二元組data_structure=(d,r)d是資料元素的有限集,r是d上關係的有限集
資料結構三要素:邏輯結構:從具體問題抽象出來的數學模型,是資料之間的相互關係。
儲存(物理)結構
:資料結構在計算機中的表示(又稱映像)
。研究的是資料結構在計算機中的實現方法,包括資料結構中元素的表示及元素之間的關係的表示:順序和鏈式儲存結構。
順序:把邏輯上相鄰的元素儲存在物理位置相鄰的儲存單元中,通常通過陣列實現。
鏈式:對邏輯上相鄰的元素不要求物理位置相鄰,通常通過指標型別來實現。
運算/操作
資料型別
:乙個值的集合和定義在這個值集上的一組操作的總稱。分為原子型別和結構型別(若干成分按某種結構組成,可分解,如陣列)
抽象資料型別描述的一般形式如下:
adt 抽象資料型別名稱 adt抽象資料型別名稱
筆記 資料結構
解釋經典例題 計算給定多項式在給定點x處的值。f x a0 a1 x a n 1 x n 1 a n x n 方法一 double num int n,double array,double x 改進方法 double num int n,double array,double x clock 捕捉...
學習筆記 資料結構
一 常用的資料結構 1 線性資料結構 元素之間一般存在元素之間存在一對一關係,是最常用的一類資料結構,典型的有 陣列 棧 佇列和線性表 2 樹形結構 結點間具有層次關係,每一層的乙個結點能且只能和上一層的乙個結點相關,但同時可以和下一層的多個結點相關,稱為 一對多 關係,常見型別有 樹 堆 3 圖形...
Python筆記 資料結構
list list是python內建的一種資料型別。list是一種 有序的集合,可以隨時新增和 刪除其中的元素。定義列表的方法就是 例如 classmates michael bob tracy 支援按照索引訪問和刪除 支援在列表尾端插入和刪除 列表中的元素的型別可以不統一 tuple tuple是...