一、程式設計的概念
1、程式設計的實質是資料表示和資料處理,資料要能被計算機處理,首先必須能夠儲存在計算機記憶體中,這項任務稱為資料表示;乙個實際問題的求解必須滿足各項處理要求,這項任務稱為資料處理
2、其中資料表示的核心是資料結構;資料處理的核心是演算法
3、因此,資料結構+演算法 = 程式
二、資料結構的由來
1、計算機能夠求解的問題一般分為數值問題和非數值問題
2、數值問題的資料模型通常是數學方程;非數值問題抽象出的資料模型通常是線性表、樹、圖等資料結構
三、資料結構的研究思路即內容
對於資料結構,主要有以下四點內容
1、資料的邏輯結構:核心是如何組織待處理的資料及資料之間的關係
2、資料的儲存結構:核心是如何有效地儲存資料以及資料之間的邏輯結構
3、演算法:核心是如何有效的處理資料
4、常用資料處理技術:包括查詢、排序、索引技術等
四、資料結構的簡單概念
1、資料:資料一般被分為兩類,一類是整數、實數等數值資料;一類是影象、聲音、圖形等非數值資料
2、資料元素
3、資料結構:指相互之間存在一定關係的資料元素的集合。
4、資料的邏輯結構:指資料元素之間邏輯關係的整體根據元素之間的邏輯關係的不同,資料結構可分為以下四類
1)集合:資料元素之間就是「屬於同乙個集合」
2)線性結構:資料元素之間存在著一對一的線性關係
3)樹結構:資料元素之間存在著一對多的層次關係
4)圖結構:資料元素之間存在著多對多的任意關係
樹、圖結構被稱為是非線性結構
5、資料的儲存結構:指資料元素之間邏輯關係的整體,又稱為物理結構,是資料及其邏輯結構在計算機中的表示,通常存在兩種儲存結構:順序儲存結構和連線儲存結構
6、順序儲存結構的基本思想:用一組連續的儲存單元依次儲存資料元素,資料元素之間的邏輯關係由元素的儲存位置來表示
7、連線儲存結構的基本思想:用一組任意的儲存單元儲存資料元素,資料元素之間的邏輯關係用指標來表示
五、演算法的簡單概念
1、演算法:演算法是對特定問題求解步驟的一種描述,是指令的有限序列
2、演算法一般滿足以下5個特徵:輸入(零個或多個輸入)、輸出(乙個或多個輸出)、有窮性、確定性、可行性
3、「好」算滿足的特徵法:正確性、魯棒性(健壯性)(對非法輸入有較強的抵抗能力)、簡單性、抽象分級、高效性
4、演算法的表示:自然語言、流程圖、程式語言、偽**
5、演算法分析,如何度量乙個演算法的效率?測算其時間和空間開銷
1)時間複雜度:可以用演算法中基本語句的執行次數來度量演算法的工作量
2)空間複雜度:是指演算法的執行過程中,需要的輔助空間的數量
六、資料結構的學習內容通常分為以下幾個內容
1、線性表
2、棧和佇列
3、字串和多維陣列
4、樹和二叉樹
5、圖6、查詢技術
7、排序技術
資料結構 01 資料與資料結構
1.資料data 資料是描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合。2.資料元素data elements 資料元素是組成資料的 有一定意義的基本單位,在計算機中通常作為整體進行處理。3.資料物件data object 資料物件是性質相同的資料元素的...
資料與資料結構
1.1 資料 data 1.2 資料大致分的兩類 1 數值性資料 2 非數值資料 1.3 資料元素 data element 1.4 資料元素中的資料項可以分為兩種 1 初等項 2 組合項2.1 資料結構 data structure 2.2 資料結構的內容 2.2.1 資料的邏輯結構 2.2.2 ...
資料結構 資料結構與演算法01
1 求一組整數中的最大值。演算法 基本操作是 比較兩個數的大小 模型 仔細想想 你並不知道這個整數到底是多大?整數過大你該怎麼去表示?2 足協的資料庫管理的程式 演算法 需要管理的專案?如何管理?使用者介面?模型 3 資料與資料結構 資料 所有能被輸入到計算機中,並被計算機處理的符號的集合計算機操作...