【大学院-筆記試験練習:线性代数和数据结构(15)】

大学院-筆記試験練習:线性代数和数据结构(15)

1-前言

为了升到自己目标的大学院,所作的努力和学习,这里是线性代数和数据结构部分。

2-线性代数-题目

3-线性代数-参考答案


4-数据结构-题目

5-数据结构-参考答案

問1

(1) 隣接行列で実装したときの隣接判定の時間計算量

隣接行列では,2頂点 (u, v) が隣接しているかは行列要素を 1回参照すれば判定できる。

答 :

O(1)


(2) 隣接リストで実装したときの空間計算量

隣接リストでは

  • 頂点数:(|V| = n)
  • 辺数:(|E| = m)

各頂点リスト+全辺を保持する。

答 :

O(n + m)


(3) 図1のグラフで BFS(始点:1)の訪問順

図1の有向辺(読み取り):

  • 1 → 2, 4
  • 2 → 6
  • 4 → 3, 6
  • 3 → 1, 5
  • 5 → 4

※「隣接頂点が複数あるときは 頂点番号の昇順」

BFS 手順
  • 開始:1
  • 1 → {2,4}
  • 2 → {6}
  • 4 → {3}
  • 6 → なし
  • 3 → {5}
  • 5 → なし

答(訪問順) :

1 \\rightarrow 2 \\rightarrow 4 \\rightarrow 6 \\rightarrow 3 \\rightarrow 5


(4) BFS 実行時のキュー Q の空間計算量

最悪の場合,キューには 全頂点が入る。

答 :

O(n)


(5) BFS を DFS に変更する場合のキュー処理の変更点

DFS では FIFO キューを使わず,LIFO 構造を用いる。

答 :

キューを スタック(LIFO) に変更する

(ENQUEUE/DEQUEUE を PUSH/POP に変更)


問2(ソートアルゴリズム)

文章の流れに対応させて解答します。

空欄 解答
(1) 計数ソート
(2) 最小値
(3) (n^2)
(4) 比較
(5) (n \log n)
(6) (n \log n)
(7) ピボット
(8) (n \log n)
(9) (n^2)
(10) 安定

完成文(確認用・要点)

  • 数の範囲が分かる場合は 計数ソート により (O(n))
  • 選択ソート:最小値を選択,平均・最悪ともに (O(n^2))
  • マージソート:分割と比較による統合,平均・最悪ともに (O(n\log n))
  • クイックソート:ピボットで分割,平均 (O(n\log n)),最悪 (O(n^2))
  • マージソートは 安定ソート

6-总结

训练成长。!!

相关推荐
白杨尚青11 分钟前
C++进阶篇(五):红黑树——四条规则、三种插入情况与旋转变色
开发语言·数据结构·c++·stl·红黑树·平衡二叉树
likexuec17 小时前
数据结构(2)
数据结构
D e re k ZH19 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
冻柠檬飞冰走茶20 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
十二2 天前
【洛谷题解】P1083 [NOIP 2012 提高组] 借教室(二分答案 + 差分)
数据结构·c++·算法·蓝桥杯
D e re k ZH2 天前
C++ 从零入门(一):基础语法与程序结构
数据结构·c++·算法
careathers2 天前
【数据结构】基于比较的排序算法 - 交换排序
数据结构·算法·排序算法
H.莓飛2 天前
【C++】【STL】vector_OJ题
linux·服务器·开发语言·数据结构·c++·visual studio
老师我太想进步了20263 天前
【数据结构-4】算法美学之顺序表
数据结构·算法
GrowingIO技术社区3 天前
CDP、行为分析、归因与营销自动化有什么区别?
数据结构·数据挖掘·数据分析