2018考研计算机专业课核心考点总结(2).docxVIP

  • 1
  • 0
  • 约1.62千字
  • 约 5页
  • 2019-08-27 发布于天津
  • 举报

2018考研计算机专业课核心考点总结(2).docx

  1初始化初始化时,只有源点的最短距离是已知的=0,故红点集={},蓝点集为空。   2重复以下工作,按路径长度递增次序产生各顶点最短路径,在当前蓝点集中选择一个最短距离最小的蓝点来扩充红点集,以保证算法按路径长度递增的次序产生各顶点的最短路径。   当蓝点集中仅剩下最短距离为∞的蓝点,或者所有蓝点已扩充到红点集时,到所有顶点的最短路径就求出来了。   注意①若从源点到蓝点的路径不存在,则可假设该蓝点的最短路径是一条长度为无穷大的虚拟路径。   ②从源点到终点的最短路径简称为的最短路径;到的最短路径长度简称为的最短距离,并记为。   堆排序   大根堆的定义完全二叉树,任一非叶子结点都大于等于它的孩子,也就是说根结点是的。   而且显然大根堆的任一棵子树也是大根堆。   堆排序的基本思想记录区的分为无序区和有序区前后两部分;用无序区的数建大根堆,得到的根的数和无序区的最后一个数交换,也就是将该根归入有序区的最前端;如此重复下去,直至有序区扩展至整个记录区。   具体操作可按下面步骤实现   1建大根堆   2交换根和无序区最后一个数   3重建大根堆,因为交换只是使根改变了,所以左右子树依然分别是大根堆。   4比较根,左子树的根和右子树的根,如果根,则无须再作调整,树已经是大根堆了;如果左子树的根,交换它与根,再递归调整左子树;如果右子树的根,交换它与根,再递归调整右子数。  

文档评论(0)

1亿VIP精品文档

相关文档