广度优先搜索

这也是一种图的遍历搜索方法,它不像广度优先搜索一样不到黄河不死心。它比较喜欢四处开花,到处结果。

方法:

我们利用队列解决这一问题

  1.我们建立一个队列来完成

(注:队列与栈相反,先进先出,可以用数组和两个下标来完成,一个代表队列的首部,一个代表尾部。加入时加入数组的末尾使尾下标加一,出来时使首坐标加一.初始时首尾下标相同)

  2.建立状态数组来记录每一个点是否被访问。

  3.建立编号数据来记录每一个点的遍历顺序

  4.将第一个点压入队列中,队尾加1

  5.当队列不为空时(两个下标不相等时)(缩进表示循环)

    6.队首出队,队首下标加1

    7.出队的点标记为以访问,并且将其编号记录。而且使保存编号的变量加一

    8.将出队点的未访问临接点全部加入队列(队尾)然后将队尾下标增加相应值

时间复杂度:

  如深度一样为O(n+e)

posted @ 2019-07-05 22:17  经济部  阅读(162)  评论(0编辑  收藏  举报