自學考試 資料結構

2022-05-03 16:45:12 字數 2381 閱讀 1748

1.帶頭結點的單迴圈鍊錶的頭指標為head,則判斷該鍊錶是否為空的條件是head->next==head

2.不需要判斷棧是否為空的是 進棧

3.對於任意一棵二叉樹,如果其葉結點數為n0,而度數為2的結點總數為n2,則n0=n2+1;

4.m個葉結點的哈夫曼樹中,其結點總數為2m-1

5.用n表示圖中頂點數目,有n(n-1)/2條邊的無向圖稱為完全圖。

6.在帶權有向圖中求兩個結點之間的最短路徑可以採用的演算法是迪傑斯特拉(dijkstra)演算法

7.一棵初始時為空的二叉樹中,依次插入鍵值序列50,72,43,85,75,20,38,45,65,60,構造對應的二叉排序樹以後,查詢元素60要進行的比較次數是4

8.快速排序屬於交換排序

9.c程式中,將對稱矩陣a[n][n]的下三角元素壓縮儲存到n(n+1)/2個元素的一維陣列m中,設a[i][j](i≥j)存放在陣列m[k]中,則k的值(用i,j表示)為__(i+1)i/2+j_

二叉排序樹(binary sort tree)又稱二叉查詢樹,亦稱二叉搜尋樹。 它或者是一棵空樹;或者是具有下列性質的二叉樹:

(1)若左子樹不空,則左子樹上所有結點的值均小於它的根結點的值;

(2)若右子樹不空,則右子樹上所有結點的值均大於它的根結點的值;

(3)左、右子樹也分別為二叉排序樹;

無向圖鄰接矩陣的第i行(或第i列)非零元素的個數正好是第i個頂點的度。

有向圖鄰接矩陣中第i行非零元素的個數為第i個頂點的出度,第i列非零元素的個數為第i個頂點的入度,第i個頂點的度為第i行與第i列非零元素個數之和。

堆 是電腦科學中一類特殊的資料結構的統稱。堆通常是乙個可以被看做一棵樹的陣列物件。堆總是滿足下列性質:

堆中某個節點的值總是不大於或不小於其父節點的值;

堆總是一棵完全樹。

將根節點最大的堆叫做最大堆或大根堆,根節點最小的堆叫做最小堆或小根堆。常見的堆有二叉堆、斐波那契堆等。

堆的定義如下:n個元素的序列當且僅當滿足下關係時,稱之為堆。

" ki<=k2i,ki<=k2i+1;或ki>=k2i,ki>=k2i+1.(i=1,2,…,[n/2])"

若將和此次序列對應的一維陣列(即以一維陣列作此序列的儲存結構)看成是乙個完全二叉樹,則堆的含義表明,

完全二叉樹中所有非終端結點的值均不大於(或不小於)其左、右孩子結點的值。

由此,若序列是堆,則堆頂元素(或完全二叉樹的根)必為序列中n個元素的最小值(或最大值)。

雜湊查詢

在進行查詢時,在記錄的儲存位置與它的關鍵字之間建立乙個確定的對應關係h,以線性表中每個元素的關鍵字k為自變數,

通過函式h(k)計算出該元素的儲存位置,我們將h函式稱為雜湊函式或雜湊函式。h(k)的值稱為雜湊位址或雜湊位址。

如何將一棵樹轉換成二叉樹?

解答:1. 將 節點的孩子 放在左子樹;

2. 將 節點的兄弟 放在右子樹。

延伸:任何一棵樹都可以表示成二叉樹,並不是任何一棵二叉樹都可以表示成樹。那麼樹多還是二叉樹多?

1. 任何一棵樹都可以表示成二叉樹,結合以上題目很容易理解。

2.不是任何一棵二叉樹都可以表示成樹:

當根節點包含右子樹的時候,就無法表示成樹了。

3. 樹多還是二叉樹多的問題:

二叉樹也是樹的一種,如果按照包含關係來說,樹肯定包含二叉樹了,樹多一些

雜湊函式h(key)=key mod 11(mod表示求餘運算),給出鍵值序列為66,13,41,15,44,6,68,17,26,31,39,46,

用鏈位址法解決衝突,試畫出相應的雜湊表,並計算在等概率情況下查詢成功時的平均查詢長度。

雜湊表的平均查詢長度

首先要先知道有幾個排序數,然後將這些排序數列出來,標出每個排序數按雜湊函式查詢後需要幾次才能查詢到的次數,

然後將這些次數相加後的總和除以排序數的個數就是雜湊表的平均查詢長度。查詢不成功的就是將除以排序數個數變成除以表長就行了,呵呵。

直接選擇排序

直接選擇排序(straight select sorting) 也是一種簡單的排序方法,它的基本思想是:

第一次從r[0]~r[n-1]中選取最小值,與r[0]交換,第二次從r[1]~r[n-1]中選取最小值,與r[1]交換,....,

在直接選擇排序中,共需要進行n-1次選擇和交換,每次選擇需要進行 n-i 次比較 (1<=i<=n-1),而每次交換最多需要3次移動,因此,總的比較次數c=1/2(n*n - n),

總的移動次數 3(n-1).由此可知,直接選擇排序的時間複雜度為 o(n2) (n的平方),所以當記錄占用位元組數較多時,通常比直接插入排序的執行速度快些。

由於在直接選擇排序中存在著不相鄰元素之間的互換,因此,直接選擇排序是一種不穩定的排序方法。

給自學考試畫上句號

從3月 8號開始著手做系統 分析需求 設計資料庫 介面設計 功能實現 寫 答辯 這麼多的工作成就了這麼多個緊張的日子 算不上奔波卻跑了這麼遠才到保定 下了車又是走路 走路 走路,算不上廢寢忘食卻過了兩天沒有早飯也沒有午飯的生活 今天總算是結束了.想想自考 一路走來 整兩年了 曾經考前的壓力與考後的欣...

自學考試 資料庫正規化解析

看了看第一次機房收費系統的資料庫,感覺存在很多問題,最多的問題就是資料冗餘,所以想在第二次機房的時候把資料庫設計的盡可能完美,正好也是對資料庫考試的乙個總結,首先是對我當時最頭疼的正規化的總結,正規化的作用就是消除資料冗餘 更新異常 插入異常和刪除異常。1.資料依賴 反映乙個關係內部屬性與屬性之間的...

自學考試 「運籌學基礎」

這篇部落格算是補充的,考試之前沒有及時作總結,如果讀者您看到這篇部落格了,那麼給您乙個建議,一點要做真題,至少兩套,很重要!下面的內容不是我寫的,只是再搜尋這方面的東西的時候感覺非常好就貼上過來了,好好看書,做好真題,考試不重要,學到東西才是實在的。一 概述 課本上說,運籌學 operations ...