《資料結構》 緒論

2021-06-25 15:29:04 字數 2297 閱讀 5150

1

、本書討論的非數值問題的資料組織和處理,主要內容為以下四點:

資料的邏輯結構:線性表、樹、圖等資料結構,其核心是如何組織待處理的資料以及資料之間的關係。

資料的儲存結構:如何將線性表、樹、圖等資料結構儲存到計算機的儲存器中,其核心是如何有效地儲存資料以及資料間的邏輯關係

演算法:如何基於資料的某種儲存結構實現插入、刪除、查詢等基本操作,其核心是如何有效地處理資料

常用資料處理技術:包括查詢技術、排序技術、索引技術等。 2

、資料是資訊的載體,在電腦科學中是指所有能輸入到計算機中並能被電腦程式識別和處理的符號集合。

可以將資料分為兩類:數值資料和非數值資料 3

、資料元素是資料的基本單位,在電腦程式中通常作為乙個整體進行考慮和處理。

構成資料元素的不可分割的最小單位稱為資料項。 4

、資料結構是指相互之間存在一定關係的資料元素的集合。

資料結構分為邏輯結構和儲存結構。

邏輯結構指資料元素之間邏輯關係的整體。

資料結構分為四類:集合、線性結構、樹結構、圖結構,而樹結構和圖結構又被稱為非線性結構

資料的儲存結構又稱為物理結構,是資料及其邏輯結構在計算機中的表示。分為順序儲存結構和鏈結儲存結構兩類。

資料的邏輯結構是面向問題的,儲存結構是面向計算機的。 5

、資料型別是指一組值的集合以及定義於這個值集上的一組操作的總稱。資料型別規定了該型別資料的取值範圍和對這些資料所能採取的操作

抽象資料型別(

adt)是乙個資料結構以及定義在該結構上的一組操作的總稱。 6

、資料型別與

adt的區別:資料型別指的是高階程式語言支援的基本資料型別,而

adt指的是自定義的資料型別。 7

、演算法:解決問題的方法。包含五個特性:輸入、輸出、有窮性、確定性、可行性。

好演算法的五個特性:正確性、魯棒性(即健壯性,是演算法對非法輸入的抵抗能力)、簡單性、抽象分級、高效性。 8

、演算法的描述方法:自然語言、流程圖、程式語言、偽**。

自然語言:優點是容易理解,缺點是容易出現二義性、並且冗長。

流程圖:優點是直觀易懂,缺點是嚴密性不如程式語言,靈活性不如自然語言

程式語言:優點是能由計算機直接執行,缺點是抽象性差,並且還要求演算法設計者掌握程式語言及其程式設計技巧。

偽**:是一種介於自然語言和程式語言之間的方法。

偽**又稱為演算法語言或第一語言。

課後習題:

資料元素是資料的基本單位,在電腦程式中通常作為乙個整體進行考慮和處理。

資料項是資料的基本單位,資料元素是討論資料時涉及的最小資料單位。

資料結構指的是資料元素以及資料元素之間的關係。

從邏輯關係上講,資料結構主要分為集合、線性結構、樹結構、圖結構。

資料儲存結構主要有順序儲存結構和連線儲存結構兩種基本方法,不論哪種儲存結構,都要儲存兩方面的內容:資料元素和資料元素之間的關係。

演算法具有五個特性,分別是有零個或者多個輸入、有乙個或多個輸出、有窮性、確定性、可行性。

演算法的描述方法通常有自然語言、程式語言、流程圖和偽**四種,其中偽**被稱為演算法語言。

順序儲存結構中資料元素之間的邏輯關係是由儲存位置表示的,連線儲存結構中的資料元素之間的邏輯關係是由指標表示的。

計算機所處理的資料一般具有某種內在聯絡,這是指元素和元素之間存在某種關係。

相同的邏輯結構對應的儲存結構是不一定相同的。

可以用抽象資料型別定義乙個完整的資料結構。

抽象資料型別是乙個資料結構以及定義在該結構上的一組操作的總稱。

演算法指的是對特定問題求解步驟的一種描述,是指令的有限序列。

演算法分析的目的是分析演算法的效率以求改進,演算法分析的兩個主要方面是空間效能和時間效能。

演算法的時間複雜度要通過演算法中基本語句執行次數的數量級來確定。

資料的邏輯結構是資料之間的邏輯關係的整體。

邏輯結構與資料元素本身的內容和形式無關。因此邏輯結構是資料組織的主要方面。

基本操作的實現是基於某種儲存結構設計的,並不是唯一的。

選擇和評價資料結構的標準語方法是什麼?

首先,對給定的實際問題可以建立起不同的資料結構;其次,對於給定的資料結構,可以選擇不同的儲存實現,即採用不同的儲存結構;再次,在給定資料結構和儲存結構的條件下,對同一基本操作可以設計出不同演算法。因此,資料的邏輯結構、儲存結構和操作(特別是基本操作)的實現是密切相關的。一般的,在建立資料結構時應該考慮以下三個方面:

確定表示問題所需的資料及其特性。

確定必須支援的基本操作,並度量每種操作所受的時、空資源限制,某些重要的操作,例如查詢、插入和刪除的資源限制通常決定了資料結構的選擇。

選擇(或設計)最接近這些開銷的資料結構

資料結構 資料結構緒論

資料結構是相互間存在一種或多種特定關係的資料元素的集合。程式設計 資料結構 演算法 資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科。資料元素是組成資料的 有一定意義的基本單位,是計算機中通常作為整體處理,也被稱為記錄。乙個資料元素可以由若干個資料項組...

資料結構 緒論

程式 資料結構 演算法 資料 對客觀事物的符號表示。資料元素 資料的基本單位,由若干個資料項組成。資料項是資料不可分割的最小單位。資料物件 性質相同的資料元素的集合,使資料的乙個子集。資料元素是相互之間存在一種或多種特定關係的資料元素的集合。預定義常量型別 函式結果狀態嗎 define true 1...

資料結構緒論

資料結構是一種抽象資料的過程,這種能力是任何工具都無法代替的。學習資料結構的目的 資料結構是計算機專業的基礎,它為幾乎所有的軟體設計的基礎。同時他也培養求解複雜問題的能力。那麼,什麼是資料結構呢,這個概念是很重要的,人月神話上有一段話,說人們往往喜歡將問題分解開來處理,但是這樣一來造成了對整個問題的...