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

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

1-前言

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

2-线性代数-题目

3-线性代数-参考答案



4-数据结构-题目

5-数据结构-参考答案

(1)数列 S = {3, 7, 1, 5} を順に insert した結果

插入过程

  1. 插入 3 → 作为根

  2. 插入 7 → 7 > 3 → 右子

  3. 插入 1 → 1 < 3 → 左子

  4. 插入 5

    • 5 > 3 → 右
    • 5 < 7 → 成为 7 的左子

得到的二分探索木

复制代码
      3
     / \
    1   7
       /
      5

(2)图2 的二分探索木に visit 関数を適用した出力順

visit 函数顺序

text 复制代码
print(node)
→ visit(left)
→ visit(right)

这是 先行順(Preorder Traversal)

图2 的结构(题目给定)

复制代码
        5
       / \
      3   6
     / \
    2   4
   /
  1

访问顺序

复制代码
5 → 3 → 2 → 1 → 4 → 6

输出结果

复制代码
5 3 2 1 4 6

(3)insert 関数の時間計算量

设数据个数为 n

  • 最悪時間計算量

    • 木退化成链表(已排序插入)
    • 高度 = n
      O(n)
  • 最良時間計算量

    • 木近似平衡
    • 高度 = log n
      O(log n)

(4)図2の木を「右に単回転」した結果

右回転发生在 节点 5(左子为 3)

回转前

复制代码
      5
     /
    3

回转后

复制代码
        3
       / \
      2   5
     /   / \
    1   4   6

回転後の二分探索木

复制代码
        3
       / \
      2   5
     /   / \
    1   4   6

問2:ソートアルゴリズム A

(1)配列 A = {3, 4, 2, 1} のソート過程

该算法每一步:

从 Ai~An−1 中找最小值,与 Ai 交换

i = 0

  • 最小值 = 1
    → 交换 A0 与 A3

    {1, 4, 2, 3}

i = 1

  • 最小值 = 2
    → 交换 A1 与 A2

    {1, 2, 4, 3}

i = 2

  • 最小值 = 3
    → 交换 A2 与 A3

    {1, 2, 3, 4}


(2)本アルゴリズムの名称

選択ソート(Selection Sort)


(3)時間計算量

  • 平均時間計算量
    O(n²)

  • 最悪時間計算量
    O(n²)

(无论初始顺序如何,都要做完整扫描)


(4)安定ソートか?

  • 选择排序会直接交换元素
  • 相同值的相对顺序可能改变

不是稳定排序

✅ 回答:

复制代码
いいえ

(5)本アルゴリズムより最悪時間計算量が小さいソート

任选一个即可:

  • マージソート(Merge Sort) → O(n log n)
  • ヒープソート(Heap Sort) → O(n log n)

✅ 示例回答:

复制代码
マージソート

✅ 总结(考试速背版)

项目 答案
BST visit 顺序 先行順
BST 插入最坏 O(n)
BST 插入最好 O(log n)
排序算法 選択ソート
稳定性 いいえ
更快算法 マージソート

6-总结

训练成长。!!

相关推荐
一木 之林2 小时前
四、STL容器与数据结构
开发语言·数据结构·c++
_Narcissus_3 小时前
二分算法笔记及例题
数据结构·c++·笔记·算法·蓝桥杯·查找·二分算法
Jasmine_llq4 小时前
《P11248 [GESP202409 七级] 矩阵移动》
线性代数·三维 dp·转移来源上i‑1j左边ij‑1·当前字符为两个分支改或者不改·初值全部赋值负无穷,代表不可达·起点特殊初始化·答案取dpnm0]里最大值
万法若空5 小时前
CSP-J/S 排序算法完整专题训练题单
数据结构·算法·排序算法
凉茶钱5 小时前
【数据结构】排序(快排,选择,直接插入,希尔)
数据结构·算法·排序算法
二十雨辰6 小时前
[Java]-数据集合
数据结构
吴声子夜歌7 小时前
Java面试——数据结构(一)
java·数据结构·面试
wabs6667 小时前
关于栈【力扣1047. 删除字符串中的所有相邻重复项的思考】
数据结构·c++·算法·leetcode··代码随想录
疯狂打码的少年7 小时前
【数据结构】选择类排序:简单选择与堆排序
java·数据结构·笔记·算法
疯狂打码的少年8 小时前
【数据结构】排序算法:归并排序与基数排序
数据结构·笔记·算法·排序算法