【大学院-筆記試験練習:线性代数和数据结构(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-总结

训练成长。!!

相关推荐
吞下星星的少年·-·5 小时前
The 2026 ICPC Asia East Continent Online Contest (II)(构造)
数据结构·算法
wzdark9 小时前
基于矩阵的动态规划路径问题性能优化4
线性代数·矩阵·动态规划
Msshu1239 小时前
2~5串锂电快充优选|XSP36 Type‑C升压/升降压快充管理芯片
数据结构·随机森林·贪心算法·排序算法·线性回归·启发式算法
动词ing12 小时前
【学习笔记】数据结构栈与队列(栈先进后出+队列先进先出+括号匹配+消消乐模型)
数据结构·笔记·学习
a1879272183112 小时前
【算法】链表(二):链表上的双指针——变速、异链与定距,和一份路程账本
数据结构·算法·leetcode·链表·go·指针·环形链表
zcmodeltech13 小时前
火电厂模型能演示冷态启动和故障处理吗?——基于STM32与Modbus RTU的集控实训控制系统设计
数据结构·stm32·单片机·嵌入式硬件·能源
Doubbbbbbble云13 小时前
区间合并问题的常见算法模式与优化思路4
java·数据结构·算法
David猪大卫14 小时前
【C++修炼】哈希表的实现
数据结构·c++·笔记·学习·算法·哈希算法·散列表
linx29516 小时前
单元九 · 零基础路线图-第 7–9 周·类与 RAII
c语言·开发语言·数据结构·c++·嵌入式硬件·算法
布莱克60516 小时前
C++ 七大排序算法详解:选择、冒泡、插入、计数、堆、快速与归并排序
数据结构·c++·算法·排序算法