農林漁牧網

您現在的位置是:首頁 > 農業

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

2022-02-12由 黑馬程式設計師 發表于 農業

資料結構怎麼學

涉及內容主要有:

1、資料結構(基本概念)

2、資料結構與其他語言關係

3、資料結構與演算法關係

4、資料結構包含的內容

5、資料結構具體實現

目錄:

第一部分:基本概念

第一部分(基本概念)

1

、資料結構

1.1

基本概念

資料:

描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別並輸入給計算機處理的符號集合。數值型別(整型、實型等)和非數值型別(字元、聲音、影象等)。

資料物件(記錄):

是性質相同資料元素的集合,是資料的子集。

資料元素:

組成資料的、有一定含義的

基本單位

,在計算機中通常作為整體處理。

資料項:

一個數據元素由若干個資料項組成。資料項是資料不可分割的最小單位。

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

資料、資料物件、資料元素、資料項之間關係

1.2

資料結構

資料結構:

是相互之間存在一種或多種特定關係的資料元素的集合。(資料元素+關係)

(程式設計 = 資料結構 + 演算法)

邏輯結構:

是指資料物件中資料元素之間的相互關係。(四種:集合、線性、樹形、圖形)

集合結構:集合結構中的資料元素同屬一個集合外,他們沒有其他關係。元素是平等的。

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

線性結構:資料元素是一對一的關係。(對應前後)

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

樹形結構:資料元素之間存在一種一對多的層次關係。

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

圖形結構:資料元素多對多關係。

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

物理(儲存)結構:

是指資料的邏輯結構在計算機中的儲存形式。兩種:鏈式儲存,順序儲存。

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

順序儲存結構:

是把元素存放在地址連續的儲存單元裡,其資料之間的邏輯關係和物理關係是一致的。

鏈式儲存結構:

資料元素存放在任意的儲存單元中,這組儲存單元可以是連續的也可以是不連續的。需指標儲存地址。

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

資料型別:

是指一組性質相同的值的集合及定義在此集合上的一組操作的總稱。

抽象資料型別:

是指一個數學模型及定義在該模型上的一組操作。(主要指的是邏輯上的,抽象資料型別體現了程式設計中問題分解、抽象和資訊隱藏的特性)

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

資料結構

2

、與其他語言的關係

資料結構本身與語言無關。(java\c\python等等)

例如:勾股定理。

3

、演算法

解決特定問題求解步驟的描述,在計算機中表現為指令的有限序列,並且每條指令都表示一個或多個操作。此處演算法是為了更好地理解資料結構。(包含演算法特徵、設計要求等)

例子:1+2+3+。。。。+100

方法一、普通計算

int sum=0;

for(int i=1,n=100;i<=n;i++){

sum+=i;

}

System。out。println(sum);

方法二、等差數列

int sum=0,n=100;

sum=(1+n)*n/2;

System。out。println(sum);

時間複雜度:

在進行演算法分析時,語句總執行次數T(n)是關於問題規模n的函式,進而分析T(n)隨n變化情況確定T(n)的數量級。

空間複雜度:

計算演算法所需的儲存空間。

常見時間複雜度比較:

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)

大小關係

黑馬程式設計師:程式設計師必學之大資料資料結構介紹(第一部分)