浙江大学计算机保研面试真题及详细答案(真实考场版).docxVIP

  • 0
  • 0
  • 约4.8千字
  • 约 5页
  • 2026-08-12 发布于河北
  • 举报

浙江大学计算机保研面试真题及详细答案(真实考场版).docx

浙江大学计算机保研面试真题及详细答案(真实考场版)

一、计算机408核心高频题(浙大必考,追问最多)

(一)数据结构与算法

Q1:讲一下常见排序算法的时间复杂度、稳定性,以及各自适用场景

答:我重点说面试最常考的几种。首先冒泡、插入、选择排序,最好最坏和平均复杂度分别是O(n)、O(n2)、O(n2),其中冒泡和插入是稳定排序,选择不稳定,适合小规模、基本有序的数据。

快速排序平均O(nlogn)、最坏O(n2),不稳定,是工程里最常用的,常数开销小,适合大数据量,缺点是有序数据下性能差。归并排序最好最坏都是O(nlogn),稳定,适合外排序、需要稳定排序的场景,缺点是需要额外空间。堆排序O(nlogn)、不稳定,空间复杂度低,适合TOPK问题。

浙大老师常追问:快排为什么比归并快?答:快排是原地排序,缓存命中率高,没有归并的额外空间开销和数据拷贝,实际工程常数更小。

Q2:最小生成树两种算法(Prim、Kruskal)的区别和适用场景

答:Prim是从单点扩散,每次选连接已连通区域的最短边,适合稠密图,时间复杂度和顶点数相关。Kruskal是按边权从小到大选边,用并查集判环,适合稀疏图,时间复杂度主要由边的排序决定。

简单说,顶点少、边多就用Prim,顶点多、边少就用Kruskal,工程上稀疏图基本都用Kruskal。

Q3:二叉搜索树、平衡二叉树、红黑树的区别,红黑树为什么

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档