数据结构复习重点

合集下载

数据结构复习资料复习提纲知识要点归纳

数据结构复习资料复习提纲知识要点归纳

数据结构复习资料复习提纲知识要点归纳数据结构复习资料:复习提纲知识要点归纳一、数据结构概述1. 数据结构的定义和作用2. 常见的数据结构类型3. 数据结构与算法的关系二、线性结构1. 数组的概念及其特点2. 链表的概念及其分类3. 栈的定义和基本操作4. 队列的定义和基本操作三、树结构1. 树的基本概念及定义2. 二叉树的性质和遍历方式3. 平衡二叉树的概念及应用4. 堆的定义和基本操作四、图结构1. 图的基本概念及表示方法2. 图的遍历算法:深度优先搜索和广度优先搜索3. 最短路径算法及其应用4. 最小生成树算法及其应用五、查找与排序1. 查找算法的分类及其特点2. 顺序查找和二分查找算法3. 哈希查找算法及其应用4. 常见的排序算法:冒泡排序、插入排序、选择排序、归并排序、快速排序六、高级数据结构1. 图的高级算法:拓扑排序和关键路径2. 并查集的定义和操作3. 线段树的概念及其应用4. Trie树的概念及其应用七、应用案例1. 使用数据结构解决实际问题的案例介绍2. 如何选择适合的数据结构和算法八、复杂度分析1. 时间复杂度和空间复杂度的定义2. 如何进行复杂度分析3. 常见算法的复杂度比较九、常见问题及解决方法1. 数据结构相关的常见问题解答2. 如何优化算法的性能十、总结与展望1. 数据结构学习的重要性和难点2. 对未来数据结构的发展趋势的展望以上是数据结构复习资料的复习提纲知识要点归纳。

希望能够帮助你进行复习和回顾,加深对数据结构的理解和掌握。

在学习过程中,要注重理论与实践相结合,多进行编程练习和实际应用,提高数据结构的实际运用能力。

祝你复习顺利,取得好成绩!。

数据结构考研复习要点

数据结构考研复习要点

考研题型包括:简答题;方法选择(分析);构造题;算法题。

第一章绪论1. 数据结构的基本概念:数据、数据元素、数据对象、数据结构2. 抽象数据类型:数据对象、逻辑关系、一组操作。

ADT的特点:数据抽象、信息隐蔽3. 数据结构三要素:数据元素间的逻辑关系、物理存储和一组操作。

元素间的逻辑关系:集合、线性、树、图元素在计算机内存中的存储结构:顺序、非顺序4. 算法的定义:规则的有限集合,为了解决某个特定问题而规定的一系列基本操作。

算法特性:有限性、确定性、可行性、输入、输出算法设计目标:正确性、可读性、鲁棒性、高效率低存储5. 算法性能评价:时间和空间算法时间复杂度:T(n)=O(f(n))。

它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐近时间复杂度,简称为时间复杂度。

其中f(n)是问题规模n的某个函数。

求解算法的时间复杂度的具体步骤是:⑴找出算法中的基本语句;⑵计算基本语句的执行次数的数量级;保留基本语句执行次数的函数中的最高次幂,忽略所有低次幂和最高次幂的系数。

⑶用大Ο记号表示算法的时间性能。

将基本语句执行次数的数量级放入大Ο记号中。

O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < { O(2^n) < O(n!) < O(n^n) }【例】分析下面各算法的时间复杂度算法1:int fact(int n){ if (n<=1) return 1;return n*fact(n-1);}算法2:i=l;while (i<n){for(j=l;j<=n;j++)x=x+l;i=i*2;}算法3:for(i=l;i<=n;i++){ j=l;while (j<=i){x+=l; j++;}}算法:4void sort(int b[],int n){ int i, j, k;for (i=0; i<n-1; i++){ k = i;for (j=i+1; j<n; j++)if (b[k] > b[j]) k = j;x = b[i]; b[i] = b[k]; b[k] = x;}}算法5void add(int n){ int i = 0, s = 0;while (s<n){ i++;s = s + i;}}设while循环语句执行次数为T(n),则算法6void hanoi(int n, char a, char b, char c){ if (n==1) printf("move %d disk from %c to %c \n", n, a, c);else{ hanoi(n-1, a, c, b);printf("move %d disk from %c to %c \n", n, a, c);hanoi(n-1, b, a, c);}}算法7:void PreOrder(BiTree T){ if (T){ v isit(T->daata)PreOrder(T->lchild);PreOrder(T->rchild);}}算法空间复杂度:空间复杂度(Space Complexity)是对一个算法在运行过程中临时占用存储空间大小的量度。

数据结构 复习重点

数据结构 复习重点

数据结构复习重点谁让我找到你们了.第一章1.数据是信息的载体,它能够被计算机识别、存储和加工处理。

2.数据元素是数据的基本单位。

有些情况下,数据元素也称为元素、结点、顶点、记录。

3.数据结构指的是数据之间的相互关系,即数据的组织形式。

一般包括三个方面的内容:①数据元素之间的逻辑关系,也称为数据的逻辑结构;②数据元素及其关系在计算机存储器内的表示,称为数据的存储结构;③数据的运算,即对数据施加的操作。

4.数据类型是一个值的集合以及在这些值上定义的一组操作的总称。

按"值"是否可分解,可将数据类型划分为两类:①原子类型,其值不可分解;②结构类型,其值可分解为若干个成分。

5.抽象数据类型是指抽象数据的组织和与之相关的操作。

可以看作是数据的逻辑结构及其在逻辑结构上定义的操作。

6.数据的逻辑结构简称为数据结构。

数据的逻辑结构可分为两大类:①线性结构(~的逻辑特征是若结构是非空集,则有且仅有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前趋和一个直接后继);②非线性结构(~的逻辑特征是一个结点可能有多个直接前趋和直接后继)。

7.数据存储结构可用四种基本的存储方法表示:①顺序存储方法(该方法是把逻辑上相邻的结点存储在物理位置上相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现。

由此得到的存储表示称为顺序存储结构);②链接存储方法(该方法不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。

由此得到的存储表示称为链式存储结构);③索引存储方法(该方法通常是在存储结点信息的同时,还建立附加的索引表);④散列存储方法(该方法的基本思想是根据结点的关键字直接计算出该结点的存储地址)。

8.非形式地说,算法是任意一个良定义的计算过程,它以一个或多个值作为输入,并产生一个或多个值为输出。

因此,一个算法是一系列将输入转换为输出的计算步骤。

9.求解同一计算问题可能有许多不同的算法,究竟如何来评价这些算法的好坏以便从中选出较好的算法呢?选用的算法首先应该是"正确"的。

数据结构重点

数据结构重点

数据结构重点1.数据结构+算法=程序设计2.数据元素是数据的基本单位,数据项是数据的不可分割的最小单位3.数据对象:性质相同的数据元素的集合,是数据的一个子集。

4.数据结构:带有某种结构的数据元素的集合。

5.数据结构的4种基本类型:(1)集合(2)线性结构(3)树形结构(4)图状结构或网状结构6.数据的物理结构(又称存储结构):数据结构在计算机中的表示(又称映像)7.在计算机中,表示信息最小单位是二进制数的一位叫做(位)8.数据元素之间的关系在计算机中的表示方法有:(1)顺序映像(2)非顺序映像9.线性结构的特点:在数据元素的非空有限集合中(1)存在唯一的一个被称作“第一个”的数据元素(2)存在唯一的一个被称作“最后一个”的数据元素(3)除第一个外,集合中的每个元素均只有一个前驱;(4)除最后一个外,集合中每个数据元素均只有一个后继10.线性表的顺序表示用一组地址连续的存储单元依次存储线性表的数据元素。

11.线性表的第i个元素的存储位置为LOC(ai)=LOC(a1)+(i-1)*L12.队列:先进先出。

它只允许在表的一端插入,而在另一端删除元素描述以下三个概念的区别:头指针,头结点,首元结点(第一个元素结点)。

解:头指针是指向链表中第一个结点的指针。

首元结点是指链表中存储第一个数据元素的结点。

头结点是在首元结点之前附设的一个结点,该结点不存储数据元素,其指针域指向首元结点,其作用主要是为了方便对链表的操作。

它可以对空表、非空表以及首元结点的操作进行统一处理。

2.2 填空题。

解:(1) 在顺序表中插入或删除一个元素,需要平均移动表中一半元素,具体移动的元素个数与元素在表中的位置有关。

(2) 顺序表中逻辑上相邻的元素的物理位置必定紧邻。

单链表中逻辑上相邻的元素的物理位置不一定紧邻。

(3) 在单链表中,除了首元结点外,任一结点的存储位置由其前驱结点的链域的值指示。

(4) 在单链表中设置头结点的作用是插入和删除首元结点时不用进行特殊处理。

数据结构必考知识点总结

数据结构必考知识点总结

数据结构必考知识点总结在准备考试时,了解数据结构的基本概念和相关算法是非常重要的。

以下是一些数据结构的必考知识点总结:1. 基本概念数据结构的基本概念是非常重要的,包括数据、数据元素、数据项、数据对象、数据类型、抽象数据类型等的概念。

了解这些概念有助于更好地理解数据结构的本质和作用。

2. 线性表线性表是数据结构中最基本的一种,它包括顺序表和链表两种实现方式。

顺序表是将数据元素存放在一块连续的存储空间内,而链表是将数据元素存放在若干个节点中,每个节点包含数据和指向下一个节点的指针。

了解线性表的概念和基本操作是非常重要的。

3. 栈和队列栈和队列是两种特殊的线性表,它们分别具有后进先出和先进先出的特性。

栈和队列的实现方式有多种,包括数组和链表。

掌握栈和队列的基本操作和应用是数据结构的基本内容之一。

4. 树结构树是一种非线性的数据结构,它包括二叉树、多路树、二叉搜索树等多种形式。

了解树的基本定义和遍历算法是必考的知识点。

5. 图结构图是一种非线性的数据结构,它包括有向图和无向图两种形式。

了解图的基本概念和相关算法是非常重要的,包括图的存储方式、遍历算法、最短路径算法等。

6. 排序算法排序是一个非常重要的算法问题,掌握各种排序算法的原理和实现方式是必不可少的。

常见的排序算法包括冒泡排序、选择排序、插入排序、快速排序、归并排序等。

7. 查找算法查找是另一个重要的算法问题,包括顺序查找、二分查找、哈希查找、树查找等。

了解各种查找算法的原理和实现方式是必考的知识点之一。

8. 算法复杂度分析算法的时间复杂度和空间复杂度是评价算法性能的重要指标,掌握复杂度分析的方法和技巧是非常重要的。

9. 抽象数据类型ADT是数据结构的一种概念模型,它包括数据的定义和基本操作的描述。

了解ADT的概念和实现方式是非常重要的。

10. 动态存储管理动态存储管理是数据结构中一个重要的问题,包括内存分配、内存释放、内存回收等。

了解动态存储管理的基本原理和实现方式是必考的知识点之一。

数据结构复习重点

数据结构复习重点

数据结构复习重点数据结构是计算机科学中非常重要的一门学科,它关注的是如何组织和存储数据,以及如何通过算法处理和操作这些数据。

在计算机领域中,数据结构的掌握对于问题解决和算法设计至关重要。

本文将介绍数据结构的一些复习重点,以帮助读者更好地掌握这一学科。

一、线性数据结构线性数据结构是最简单和最常见的数据结构之一,它按照线性的方式组织和存储数据。

其中包括数组、链表、栈和队列等。

在复习线性数据结构时,需要重点关注以下几个方面:1. 数组(Array):数组是一组按照连续内存地址存储的元素。

复习时需要了解数组的基本操作,如插入、删除和查找,以及数组的优缺点和应用场景。

2. 链表(Linked List):链表是一种通过节点之间的引用链接在一起的数据结构。

复习时需要了解链表的种类,如单向链表、双向链表和循环链表,以及链表的基本操作和应用场景。

3. 栈(Stack):栈是一种遵循后进先出(LIFO)原则的数据结构。

复习时需要了解栈的基本操作,如压栈和弹栈,以及栈的应用,如函数调用和表达式求值等。

4. 队列(Queue):队列是一种遵循先进先出(FIFO)原则的数据结构。

复习时需要了解队列的基本操作,如入队和出队,以及队列的应用,如BFS算法等。

二、非线性数据结构非线性数据结构是相对于线性数据结构而言的,它的数据元素之间存在多对多的关系。

其中包括树(Tree)和图(Graph)等。

复习非线性数据结构时,需要重点关注以下几个方面:1. 树(Tree):树是一种由节点和边组成的层次结构。

复习时需要了解树的种类,如二叉树、平衡二叉树和堆等,以及树的遍历方式,如前序、中序和后序遍历,以及树的应用,如查找和排序等。

2. 图(Graph):图是一种由节点和边组成的网络结构。

复习时需要了解图的种类,如有向图和无向图,以及图的表示方式,如邻接矩阵和邻接表,以及图的遍历方式,如深度优先搜索和广度优先搜索,以及图的应用,如最短路径和网络流等。

数据结构复习要点

数据结构复习要点

A—熟练掌握B—理解C—了解第一章:绪论1. 基本概念:包括数据的逻辑结构、数据的存储结构和数据的相关运算。

C四类数据组织结构:集合、线性表、树形、图状结构C数据的存储方式:顺序存储和链式存储。

B2.算法和分析算法的特征、时间复杂度的分析和常见的时间复杂度增长率排序、空间复杂度B本章重点:分析算法时间复杂度例1. 下面关于算法说法错误的是()A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的D例2. 以下那一个术语与数据的存储结构无关?()A.栈 B. 哈希表 C. 线索树 D. 双向链表A.例3..求下段程序的时间复杂度:void mergesort(int i, int j){int m;if(i!=j){m=(i+j)/2;mergesort(i,m);mergesort(m+1,j);merge(i,j,m);}}其中mergesort()用于对数组a[n]归并排序,调用方式为mergesort(0,n-1);,merge()用于两个有序子序列的合并,是非递归函数,时间复杂度为。

解:分析得到的时间复杂度的递归关系:为merge()所需的时间,设为cn(c为常量)。

因此令,有有第二章:线性表1.线性表的基本运算:….. C2.线性表的顺序存储(利用静态数组或动态内存分配)。

相应的表示与操作 A3.线性表的链式存储。

相应的表示与操作。

包括循环链表、双向链表。

A4.顺序存储与链式存储的比较:基于时间的考虑--分别适用于静态的和动态的操作:比如静态查找和插入删除);基于空间的考虑-- ……. B这也适用于后面用两种方式存储的其他数据结构。

★本章重点:很熟悉顺序表,单链表、双链表,循环链表的基本操作;并学会在各种链表上进行一些算法设计(与基本操作类似的操作或组合),请仔细复习。

例4.假设有两个按元素值递增次序排列的线性表,均以单链表形式存储。

数据结构重点整理

数据结构重点整理

数据结构重点整理简介数据结构是计算机科学中的重要概念,指的是组织和存储数据的方式。

本文整理了数据结构的重点内容,包括以下章节:1. 数组2. 链表3. 栈4. 队列5. 树6. 图7. 哈希表8. 堆9. 排序算法10. 查找算法1. 数组1.1 定义和基本操作- 数组是一种线性数据结构,用于存储一组相同类型的元素。

每个元素可以通过索引访问。

- 基本操作包括:创建数组、访问元素、修改元素、插入元素、删除元素、获取数组长度等。

1.2 复杂度分析- 时间复杂度:对于不同操作,如访问、插入、删除等,时间复杂度可能不同。

- 空间复杂度:数组的存储空间通常为固定大小,空间复杂度为O(n)。

2. 链表2.1 定义和基本操作- 链表是一种动态数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。

- 基本操作包括:创建链表、插入节点、删除节点、访问节点、反转链表等。

2.2 复杂度分析- 时间复杂度:链表的操作时间复杂度与操作位置有关,访问节点的时间复杂度为O(n)。

- 空间复杂度:链表的空间复杂度为O(n)。

3. 栈3.1 定义和基本操作- 栈是一种后进先出(LIFO)的数据结构,只能在栈顶进行插入和删除操作。

- 基本操作包括:入栈、出栈、获取栈顶元素、判断栈是否为空等。

3.2 应用场景- 括号匹配- 表达式求值- 浏览器的前进和后退功能4. 队列4.1 定义和基本操作- 队列是一种先进先出(FIFO)的数据结构,可以在队尾插入元素,在队头删除元素。

- 基本操作包括:入队、出队、获取队头元素、判断队列是否为空等。

4.2 应用场景- 广度优先搜索(BFS)- 缓存5. 树5.1 定义和基本操作- 树是一种非线性数据结构,由节点和边组成,每个节点可以有多个子节点。

- 基本操作包括:创建树、插入节点、删除节点、遍历树等。

5.2 常见的树结构- 二叉树:每个节点最多有两个子节点。

- 二叉搜索树:左子树的键值小于根节点,右子树的键值大于根节点。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章绪论
一、基本概念P4-5
1、什么是数据、数据元素、数据对象?
2、什么是数据结构?数据结构的四种基本类型是?P5 图1.5
3、什么是数据的存储结构?P6(有四种分别是顺序、链接、散列和索引,但书上只有
前两种)
4、什么叫算法?P13
5、算法的5个特性是什么?P13
6、算法效率的度量有哪两种方法?P14
7、什么是算法的时间复杂度?P15,要求对于给定的程序段能够计算它们的时间复杂
度?
8、常见时间复杂度函数的增长率参考P16图1.7
二、示例:
1、判断题:(T or F)
1)数据的逻辑结构是数据结构在计算机中的表示().
2)算法分析是指对算法实施事前分析()。

2、求下面程序段的时间复杂度
k=0
for(i=1;i<=n;i++)
for(j=1; j<=n; j++)
k++;
3、按时间从小到大的增长率给下面的各函数排序
n, n!, n2, 2n, n3, log2n
log2n n n2 n32n n!
第二章线性表
一、基本概念:
1、什么是线性表?
线性表是一个有限元素的序列。

在线性表中,有且仅有一个开始结点和一个终端结点。

开始结点有一个后继但没有前趋;终端结点有一个前趋但没有后继,其它结点均有合格仅有一个前趋和一个后继。

2、线性表常用哪两种存储结构?
3、顺序与链式存储的优缺点?
4、什么是线性表的顺序存储?
5、请给出顺序存储的线性表结构体定义和初始化算法。

P22-23
6、什么是单链表?请写出存储结构的表示? P28
单链表是线性表的链式表示法,其结点由2个域组成,一个是data数据元素信息;另一个是存放指向后一结点的指针。

二、示例
1、在单链表中,若P指向的不是最后结点,则在P之后插入S指针所指结点的操作是()。

A)s->next=p; p->next=s; B)s->next=p->next; p->next=s;
C)s->next=p->next; p=s; D)p->next=s; s->next=p;
2、填空:
1)在单链表中,除了第一个结点外,其它结点的存储位置均由___________指示。

2)现有如下单链表中的a结点,要将L链表头指针指向a结点,写出操作语句
请填空______________________。

3、请写出单链表中某结点P的赋值语句,假设P的值=20。

结点P的赋值
LNode *p;
p=(LNode*)malloc(sizeof(LNode));
p->data=20; p->next=NULL ;
练习:
1)写出线性表的顺序存储结构体定义;以及顺序表的初始化算法
2)写出单链表的结构体定义;以及单链表中删除一个元素的算法
3)已知P结点是双向链表的中间结点,求:在p结点之后插入S结点的操作语句是();删除P结点的直接前驱结点的操作语句是()。

4)下面是在单链表中查找值为key的一个数据元素结点的算法,如果找到,返回1,否则返回0。

请补充完整。

int find(LinkList L, int key) //L是无表头结点的单链表
{ if (L) //至少存在1个结点
{ p=L;
while(p->data!=key&&p->next)
____________________________________________;
if(p->data==key)
____________________________________________;
else
____________________________________________;
} //函数结束
第三章栈与队列
一、基本概念
1、栈的基本特点是什么?可用于解决什么实际问题?P48
2、写出顺序栈的存储定义。

P46写出栈的初始化函数P47
3、什么是队列?队列有什么特点?
4、写出队列的链式存储定义P61
二、示例
1、设有一个栈和一个队列,现有元素(A,B C D E)依次进栈,出栈的元素被加入队列,并允许在进栈中出栈,则从队列输出的元素序列可能是(C E D A B )吗?
练习:
1、写出顺序栈的入栈和出栈操作函数。

P47
2、写出循环队列的存储定义和初始化函数P64
第四章串
一、基本概念
1、什么是字符串?P70
2、字符串有哪几种存储方式?
3、什么叫串的模式匹配?P79
示例:
1、已知有两个串S1=”bc cad cabcadf”,S2=”abc”,求两个串的长度是(),判断S2串
是否是S1的子串?
2、设有两个串p和q,求q在p中首次出现的位置的运算称为______________________。

第六章树
一、基本概念
1、什么是二叉树的顺序存储?P126
2、遍历二叉树有几种顺序?P128
3、二叉树有哪些性质?P123二叉树的5种基本形态?
4、二叉树的链式结点结构?P126
5、树、森林与二叉树相互转换?P138
6、树和森林的遍历?P139
7、什么是huffman树?P144
8、如何构造huffman树?如何进行huffman编码?什么是前缀编码?P146
二、示例
1、树形结构中,度为0的结点称为( )
A)树根B)叶子
C)路径D)二叉树
2、二叉树的第i(i≥1)层上所拥有的结点个数最多为( )
A)2i B)2i
C)2i-1D)2i-1
3、下列编码中,不是前缀编码P146的是()
A)(00,01,10,11)B)(0,1,00,11)
C)(0,10,110,111)D)(1,01,000,001)
4、一棵深度为n(n>1)的满二叉树中共有__2n-1_个结点。

5、一棵二叉树的前根遍历序列为ABCDEFG,中根遍历序列为CBDAEGF,试构造出该二叉树。

6、设给定权值集合w={3,5,7,8,11,12} ,请构造关于w的一棵huffman树。

练习:
1、试分别写出二叉树的先根遍历、中根和后根遍历的递归算法。

2、编写计算二叉树中叶子结点数目的算法。

3、有如下图所示的二叉树。

1)分别用顺序存储方法和链接存储方法画出该二叉树的存储结构。

2) 写出该二叉树的先序、中序、后序遍历序列。

3)请画出这棵二叉树所对应的森林。

第七章 图
一、基本概念
1、 什么是有向图和无向图P157
2、 有向图与无向图顶点度的计算?P158
3、 图的存储结构有哪些?P160
4、 图的遍历P167
5、 最小生成树,能应用prim 算法求图的最小生成树P173
示例:
1、图结构是( )关系。

A )一对多
B )多对一
C )一对一
D )多对多
2、有关图中路径的定义,表述正确的是( )
A )路径是顶点和相邻顶点偶对构成的边所形成的序列
B )路径是不同顶点所形成的序列
C )路径是不同边所形成的序列
D )路径是不同顶点和不同边所形成的集合
3、在无向图中,如果从顶点v 到顶点v ′有路径,则称v 和v ′是___________。

4、设无向图有n 个项点,则当___________,该图是完全的。

P158
5、设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。

A )5
B )6
C )7
D )8
6、下述矩阵表示一个无向连通网,试画出它所表示的连通网。

⎥⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎢⎣⎡∞∞∞∞∞∞∞∞∞ 4 2 104 9 52 8 12 9 8 110 5 12 1 7、一个具有n 个顶点的有向完全图的弧数是______。

8、n个顶点的无向图G用邻接矩阵A[n][n]存储,其中第i列的所有元素之和等于顶点V i的_______。

9、若图的邻接矩阵是一个对称矩阵,则该图一定是一个___________。

10、用prim算法,求下图的最小生成树。

相关文档
最新文档