資料結構之第一章一些概念

2022-04-02 15:13:17 字數 2504 閱讀 5682

2資料元素:是資料的基本單位,通常作為乙個整體出現,乙個資料元素包含多個資料項。

3資料物件:是性質相同資料元素的集合,是乙個資料的子集。

4資料結構:是資料間的邏輯關係,形式定義為乙個二元組。

5資料間的邏輯結構分為1 線性結構 2 樹形結構 3 網狀結構 (圖裝結構)

(1)線性結構: 資料間存在著乙個對乙個的關係,有且僅有乙個為開始節點和終端節點,除了開始節點外,每個節點有且僅有乙個前驅節點,除終端節點外,每個節點有且僅有乙個後繼節點。

(2)樹狀結構: 資料元素間存在乙個對多個的關係,有乙個開始節點和多個終端節點,除了開始節點外,每個節點有且僅有乙個前驅節點,除終端節點外,每個節點可能有多個後繼節點。

(3)網狀結構(圖裝結構): 資料元素間存在多個對多個的關係,每個節點可能有多個前驅節點和多個後繼節點。樹狀結構又稱為非線性結構。

6儲存方法順序儲存: 把節點儲存在物理上

相鄰的一組儲存單元裡,節點之間的關係由儲存單元的鄰接關係來體現。

時間複雜度是總運算次數表示式中受n的變化影響最大的那一項(不含係數)

比如:一般總運算次數表示式類似於這樣:

a*2^n+b*n^3+c*n^2+d*n*lg(n)+e*n+f

a ! =0時,時間複雜度就是o(2^n);

a=0,b<>0 =>o(n^3);

a,b=0,c<>0 =>o(n^2)依此類推eg:

(1) for(i=1;i<=n;i++)//迴圈了n*n次,當然是o(n^2)

for(j=1;j<=n;j++)

s++;

(2) for(i=1;i<=n;i++)//迴圈了(n+n-1+n-2+...+1)≈(n^2)/2,因為時間複雜度是不考慮係數的,所以也是o(n^2)

for(j=i;j<=n;j++)

s++;

(3) for(i=1;i<=n;i++)//迴圈了(1+2+3+...+n)≈(n^2)/2,當然也是o(n^2)

for(j=1;j<=i;j++)

s++;

(4) i=1;k=0;

while(i<=n-1)

} 則有 t(n)= n^2+n^3,根據上面括號裡的同數量級,我們可以確定 n^3為t(n)的同數量級

則有f(n)= n^3,然後根據t(n)/f(n)求極限可得到常數c

則該演算法的 時間複雜度:t(n)=o(n^3)

o(1)

temp=i;i=j;j=temp;                    

以上三條單個語句的頻度均為1,該程式段的執行時間是乙個與問題規模n無關的常數。演算法的時間複雜度為常數階,記作t(n)=o(1)。如果演算法的執行時間不隨著問題規模n的增加而增長,即使演算法中有上千條語句,其執行時間也不過是乙個較大的常數。此類演算法的時間複雜度是o(1)。

o(n^2)

2.1.

交換i和j的內容

sum=0;                 (一次)

for(i=1;i<=n;i++)       (n次 )

for(j=1;j<=n;j++)

(n^2次 )

sum++;       (n^2次 )

解:t(n)=2n^2+n+1 =o(n^2)

2.2.   

for (i=1;io(n)      

2.3.

a=0;

b=1;                      ①

for (i=1;i<=n;i++) ②

解:語句1的頻度:2,        

語句2的頻度:

n,        

語句3的頻度: n-1,        

語句4的頻度:n-1,    

語句5的頻度:n-1,                                  

t(n)=2+n+3(n-1)=4n-1=o(n).

o(log2n

)2.4.

i=1;       ①

while (i<=n)

i=i*2; ②

解: 語句1的頻度是1,  

設語句2的頻度是f(n),   則:2^f(n)<=n;f(n)<=log2n    

取最大值f(n)=

log2n,

t(n)=o(log2n )

o(n^3)

2.5.

for(i=0;i

資料結構第一章

1.程式設計的實質 資料表示和資料處理。資料表示的核心是資料結構,資料處理的核心是演算法。資料結構 演算法 程式 2.資料是資訊的載體,在電腦科學中是指所以所有能 輸入到計算機中並能被識別電腦程式和處理的符號集合。資料的分類 一是整體,實數等數值資料 二是文字,聲音,圖形和影象等非數值資料。資料元素...

資料結構第一章

資料結構第一章 1.1廣播方式傳送檔案 傳送機傳送一次,所有都可接收。優 程式設計容易 傳送速度快 卻 容易丟包 1.2單播方式傳送 一次乙個 1.3改進方式 多級單播傳輸 類傳銷方式 順序儲存 陣列 鏈式 鍊錶 雜湊儲存 資料元素的儲存位置由值確定。資料元素之間的關係通過指標表達。查詢 如果i 某...

資料結構第一章

1.1 計算 計算才是最終的目標 繩索計算器 尺規計算器 通用步驟,給外面的一點做平行線 1.a4 演算法 a5 有窮性 u運算後加到序列中 因為64之後,一直除2都可以.演算法必須是有窮的,但是27這個,是無窮的,序列 是有窮的 但是也是很多 而42只有8個序列 好演算法有人說好演算法是 最重要的...