2020 北京理工大學889 回憶


該回憶版由(492030260)群內小伙伴討論回憶出來的,我代為整理,除非搞到原題,任何考研機構不可能比我們這個更全,希望大家購買所謂真題的時候理性消費。 

其中選擇的第4題,第12題,填空的第1題,比較有歧義,不保證回憶和答案的正確性。其他題目或者答案如果有問題,或者你回想起了其他的題目或者題目細節,歡迎在評論區寫出、群里@我或者直接私聊我。再次感謝!!!!

 

轉載請注明出處 :https://www.cnblogs.com/xuwangzihao/p/12081845.html

 

選擇題20個

1,給你入棧順序123,出棧順序231,問你操作序列。(push、push、pop、push、pop、pop

2,下列哪個說法錯誤:

  A 對稱矩陣的存儲只需要存主對角線和上三角或下三角

  B 對角矩陣不用存儲零【對角線上可能有零】

  C 稀疏矩陣可以用三元組

  D 稀疏矩陣有分布規律,可以用三元組

3,給了一循環隊列A[0……30],rear指向隊尾元素,front指向隊頭元素的前一個位置,存儲了11個元素,當前front指向25,求rear指針位置。(5)

4,有一個無向圖,每個邊值不同,問下列哪一個選項是錯的。

  A 生成樹不一定唯一

  BC很簡單,不記得了。。。

  D 兩節點的最短距離一定是最小生成樹上的兩節點最短距離

5,一個外層循環n,內層循環2n的程序,問你時間復雜度。(O(n^2))(注意不要選O(2n^2),漸進復雜度省略常數)

  A O(2n)         B O(n)

  C O(2n^2)     D O(n^2)

6,二維矩陣的壓縮方式:(答案應該是十字鏈表和三元組,不要選散列和鄰接表)

7,請選出排序算法的啟動時間最少的算法,所謂啟動時間就是說選出第一個元素的最終位置所花的時間。

  A 歸並排序    B 堆排序
  C 插入排序    D 快速排序

8,下列哪個空間復雜度不是常數:

  A 歸並排序    B 堆排序
  C 快速排序    D 置換-選擇排序

9,順序表下列哪個操作平均復雜度與眾不同。

  A 刪除元素a     B 查找元素a
  C 求表長         D 在第i個元素后插入

10,給你一個圖,問你哪個dfs序是不可能的(簡單題,沒啥說的

11,給你一個 [1..5, 1..5] 上三角矩陣,問你壓縮成一維后(下標從零開始),在行優先的情況下,a33的下標。(9

12,關於m階b樹性質,下列哪個錯誤:(每個節點最少有2個子樹,注意根節點為葉子結點的情況)

  A 每個節點最少有2個子樹

  B 每個節點最多m-1關鍵字

  C 葉節點都在同一層

  D 記錄是有序的

13,中序線索二叉樹的后繼不可能是:

  A 祖先   B 兄弟   C 右孩子的左子樹   D 兒子

14,問你抽象數據類型說法錯誤的是:(D 用戶可以看外面,也能清楚看到內部算法過程

15,給你一個序列,問你折半查找某個不存在的數字的比較次數。(簡單題

16,對於一個森林來說,以孩子兄弟表示法表示,那么對於森林中的葉子節點,在孩子兄弟表示法中應該是()

  A 沒有左孩子                    B 沒有右孩子
  C 有左孩子,沒有右孩子     D 既沒有左孩子也沒有右孩子

17,n個節點的正則(完全)二叉樹,分支節點個數為?

  A n/2      B (n-1)/2      C (n+1)/2     D n

18,給了四個序列問哪個不是折半查找的查找序列。(簡單題,只要保證搜索范圍在不斷縮小就行,比如目標是12,你之前已經比較過10和14了,這時候序列出來個8,那明顯就不是折半查找的查找序列了)

19,給了四個序列問哪個既不是大根堆,也不是小根堆。(簡單題,選項里有一個 83 82 84,83兩個孩子一大一小,那肯定錯了啊)

 

填空題15個題,20個空

1,給了一個hash函數和輸入序列,問你某一個值在表中的key是什么,問你平均查找長度。(這題第一問簡單,第二問。。。可能要把成功查找的平均值和不成功的平均值再求平均

2,問你100個數字歸並排序需要幾趟(7

3,給你前序中序求層次遍歷。(簡單題

4,基數排序的步驟:(分配)和收集

5,給你一個序列,問步長為3的一趟希爾排序后是什么樣(簡單題

6,5層(不含葉子結點層)3階B樹結點最多 121 個,最少 31 個。

7,在二叉搜索樹中刪除u,已知u的祖先是p,u只有左子樹s。操作是:p->lc=s,s->parent=p;然后釋放u的空間。

8,給你一個avl的插入序列(10,9,15,12,11),問你它旋轉后的樹的層次遍歷。(10,9,12,11,15

9, 一個n個節點的完全二叉樹只有一個葉子結點的點是第幾個點。(n/2

10,單鏈表中刪除q的后繼結點的操作(q->next=q->next->next

11,給你一個hash函數x%7,和幾個數,問你能和48映射在同一位置的數字是(62

12,廣義表((a),(((b)),c),(d)),求長度:3,深度:4,表頭:(a),表尾((((b)),c),(d))

13,森林的后序遍歷是樹的 中 序遍歷

14,給你一個序列(1,2,3,4,5),問你折半查找數字2所用的比較次數為2次。

 

簡答題4個

1,給你中序和層次遍歷,讓你畫出那個樹,並寫出前續和中序。

簡單題,沒啥說的

 

2,已知L是單向循環鏈表,長度大於4,p1p2為指向其中兩個不同節點的指針,問你A程序的意思和復雜度。

 1 void A(L, p1, p2){
 2 
 3   B(p1,p2);
 4 
 5   B(p2,p1);
 6 
 7 }
 8 
 9 void B(LNode *s, LNode *e){
10 
11   LNode *p=s;
12 
13   while(p->next!=e)p=p->next;
14 
15   p->next = s;
16 
17 }
簡答題2題面代碼

A的功能是把循環鏈表L在p1和p1的前綴處切開、p2和p2的前綴處切開,分割成兩個單向循環鏈表。復雜度是O(n)

 

3,有兩個小問:

  1,一個50個點,100條邊的無向圖,點信息20字節,邊信息10字節,鄰接信息4字節,n、m、type各8字節,用鄰接矩陣表示,問你存儲這個圖要花多少字節。

  50*20+50*50*(10+4)+3*8

  2,問你鄰接表存儲的無向圖求連通分量的復雜度分析。

  時間復雜度:O(n+e)。因為要DFS每一個節點,且每個邊都訪問一遍。

  空間復雜度:O(n)。因為要開染色標記的輔助數組,如果DFS是遞歸實現,還要用深度為n的系統棧。

 

4,給你14個帶權重的字母,設計一種三進制編碼。

構造三叉哈夫曼樹,沒啥好說的,唯一要注意的點是要加一個權重為0的空節點。因為:(n-1)%(m-1)=(14-1)(3-1)=1。我一開始忘加了,寫完才發現不對,浪費了15分鍾。

 

算法題3個:

1,現有一字符數組S,其中存儲的是從a到z的小寫字母。設計一個算法,對該字符數組進行重新排列,使得所有的字母‘a’都放在前面,其他字母放在a后面,請分析你設計的算法的時間復雜度。

void MaxAFront(char S[],int n); 

提供兩種思路:

1,用‘a’做軸,做一趟快排,把小於等於的放左,大於的放右

2,兩個指針pq,p指向0,q遍歷,遇到一個a就交換pq指向的元素然后p++

 

2,一個有表頭節點的單鏈表l。在不改變鏈表的前提下,請設計一個盡可能高效的算法,查找鏈表中倒數第k(k為正整數)個節點。若查找成功,輸出該節點的data值,並return 1,否則return 0.

int KtoLast(LinkList L,int k)
typedef struct LNode{
int data;
struct LNode *next;
}LNode, *LinkList

 

提供三種思路:

1,兩個指針pq,先讓p走k步,然后pq一起走,如果p指向空,那么q就是倒數第k個元素。

2,計算表長n,然后輸出正向第n-k+1個元素

3,遞歸,返回值是當前層深度,回溯的時候就可以判斷是否為倒數第k個。

 

這題要注意兩個坑,

一個是列表長度可能小於k,那就是無解。

一個是不允許改變鏈表,也就是說不能用“反轉、取正向第K個、再轉回來”的算法。

 

3,二叉樹t中,每個節點都擁有一個權值(正整數),請設計一個遞歸算法,求T中所有葉子權值的最大值,假設函數定義如下。

int MaxLeafValue(BiTree T)
typedef struct BiTNode{
int w;
struct BiTNode *lchild,*rchild;
}BiTNode.*BiTree

int MaxLeafValue(BiTree T){

  if(!T) return 0;

  if(!T->lchild&&!T->rchild)  return T->w;

  return max(MaxLeafValue(T->lchild), MaxLeafValue(T->rchild));

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM