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

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

  • 1-前言
  • 2-线性代数-题目
  • 3-线性代数-参考答案
  • 4-数据结构-题目
  • 5-数据结构-参考答案
    • [B. データ構造(連結リスト)那张](#B. データ構造(連結リスト)那张)
      • 問1(1)
      • [問1(2) 末尾要素探索(最悪)](#問1(2) 末尾要素探索(最悪))
      • [問1(3) 伪代码 merge 的输出(你这里需要改)](#問1(3) 伪代码 merge 的输出(你这里需要改))
      • [問1(4) 最悪計算量](#問1(4) 最悪計算量)
    • [C. ソート / ハッシュ 那张(你这里错得比较集中)](#C. ソート / ハッシュ 那张(你这里错得比较集中))
      • 問2(排序算法分类)
        • [(1) 最悪 (O(n\log n)) 且稳定](#(1) 最悪 (O(n\log n)) 且稳定)
        • [(2) 最悪 (O(n^2)) 且不稳定](#(2) 最悪 (O(n^2)) 且不稳定)
        • [(3) 最悪 (O(n^2)) 且稳定](#(3) 最悪 (O(n^2)) 且稳定)
      • 問3(ハッシュ)
        • [(1) 最初に衝突が起きる要素](#(1) 最初に衝突が起きる要素)
        • [(2) 衝突が起きていない場合の探索最悪時間計算量](#(2) 衝突が起きていない場合の探索最悪時間計算量)
  • 6-总结

1-前言

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

2-线性代数-题目

3-线性代数-参考答案




4-数据结构-题目


5-数据结构-参考答案

B. データ構造(連結リスト)那张

問1(1)

"末尾に追加 + 先頭から削除" ⇒ キュー(①)

✅你选 ① 正确。

問1(2) 末尾要素探索(最悪)

  • 実装A:rear 不保存,找尾要走到最后 ⇒ (O(n))
  • 実装B:rear 直接指向尾 ⇒ (O(1))
    ✅你写 (O(n),O(1)) 正确。

問1(3) 伪代码 merge 的输出(你这里需要改)

给定:

  • list1:先頭から [7,5,3]
  • list2:先頭から [6,4]
    代码逻辑是"谁 val 大就先接谁"(标准 merge),所以返回链表从头到尾是:

✅正确顺序应为:7 → 6 → 5 → 4 → 3

你写成了 {3,4,5,6,7}(像集合/升序),这在题目要求"先頭から順に"时会被判错。

这题的得分点就是"按返回链表从头到尾的顺序写出来"。

問1(4) 最悪計算量

每个节点最多被处理一次 ⇒ (O(n+m))

✅你写 (O(m+n)) 正确。


C. ソート / ハッシュ 那张(你这里错得比较集中)

問2(排序算法分类)

选项(b):①バブル ②選択 ③挿入 ④ヒープ ⑤マージ ⑥クイック

(1) 最悪 (O(n\log n)) 且稳定
  • ✅マージソート(⑤)稳定,且最坏 (O(n\log n))
  • ヒープ(④)最坏也是 (O(n\log n)) 但不稳定
    所以答案:
    ✅你写 ⑤ 正确。
(2) 最悪 (O(n^2)) 且不稳定
  • ✅選択ソート(②):最坏 (O(n^2)),不稳定
  • ✅クイックソート(⑥):最坏 (O(n^2)),不稳定
    所以答案:②, ⑥
    ❌你只写了 ②,漏了 ⑥。
(3) 最悪 (O(n^2)) 且稳定
  • ✅バブルソート(①):稳定,最坏 (O(n^2))
  • ✅挿入ソート(③):稳定,最坏 (O(n^2))
    所以答案:①, ③
    ❌你只写了 ③,漏了 ①。

問3(ハッシュ)

哈希函数:(h(a)=\mathrm{mod}(a,3))

序列:10, 5, 6, 4, 2, 7, 3

(1) 最初に衝突が起きる要素

逐个看桶编号:

  • 10 mod3 = 1(桶1空)
  • 5 mod3 = 2(桶2空)
  • 6 mod3 = 0(桶0空)
  • 4 mod3 = 1(桶1已被10占了)→ 第一次冲突发生在 4
    ✅正确答案:4
    ❌你写成 6,不对(6 是第三个插入,桶0当时还是空的)。
(2) 衝突が起きていない場合の探索最悪時間計算量

题目说"没有冲突",那每个桶最多 1 个元素,查找直接定位桶即可:

✅最坏也是 (O(1))

❌你写 (O(n)) 不对。


6-总结

训练成长。!!

相关推荐
琢磨先生David3 天前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode
qq_454245033 天前
基于组件与行为的树状节点系统
数据结构·c#
超级大福宝3 天前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
岛雨QA3 天前
常用十种算法「Java数据结构与算法学习笔记13」
数据结构·算法
weiabc3 天前
printf(“%lf“, ys) 和 cout << ys 输出的浮点数格式存在细微差异
数据结构·c++·算法
wefg13 天前
【算法】单调栈和单调队列
数据结构·算法
岛雨QA3 天前
图「Java数据结构与算法学习笔记12」
数据结构·算法
czxyvX3 天前
020-C++之unordered容器
数据结构·c++
岛雨QA3 天前
多路查找树「Java数据结构与算法学习笔记11」
数据结构·算法
AKA__Zas3 天前
初识基本排序
java·数据结构·学习方法·排序