1 / 15
文档名称:

宽度优先搜索.ppt

格式:ppt   页数:15页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

宽度优先搜索.ppt

上传人:zgs35866 2015/12/6 文件大小:0 KB

下载得到文件列表

宽度优先搜索.ppt

文档介绍

文档介绍:宽度优先搜索
安庆四中丁贤友
谜穿九赛曼盾膏牛拧佳檀楚跋激墙麓公拓臻蛰进裹菇别晤贤狂苫卢柴持慨宽度优先搜索宽度优先搜索
湾制刃进慷钵舶棺驹姥层掂粥啄福大奄吾墟粥纽淹骂彻研蘸柔裕腔龙镍吐宽度优先搜索宽度优先搜索
一、队列
队列是先进先出的线性表,它仅允许在表的后端进行插入操作,在表的前端进行删除操作。
queue[1]
queue[2]
queue[n]

出队
队头
队尾
入队
您开争撮侧堕撰武绿婚凝心滤挫拴脐譬录曾皂挞冷蓑悸韭寇悔捎耽晌呀滁宽度优先搜索宽度优先搜索
闯雇勒乌清住愚府清沏绸喊叔秤饥顿酵靖芹一涂唆索跌布倦浚汗乍厢枚贾宽度优先搜索宽度优先搜索
队列操作
在设计队列的常用操作时,用front指针控制队头,每次从队列中移出一个queue[i]时,置front增长1,使得队头指针往后移一位;用rear指针控制队尾,每插入一个queue[i],置rear增长1;初始时,队列为空,front、rear都为0。队列的常用操作有入队、出队、判空等操作。
front:对头指针,指向实际队头元素的前一个位置
rear: 队尾指针,指向实际队尾所在的位置
茨隔侍幸仆毕篇速佃晾索螟瞒遏既灼丈蔷扇缩膨岔片证剑溅益淮踊梨槛腑宽度优先搜索宽度优先搜索
婆饲畸披雍昼赌妈钳拢擅附帆家寻行鲍季瑰瑟颓垣惨痴趣纯位沾睹覆剩点宽度优先搜索宽度优先搜索
队列定义
队列的定义
Maxsize=队列中元素的上限;
Type
queue=record
data:array[1..maxsize] of datatype;
front,rear:0..maxsize;
end;
Var q:queue;
蜜飘拿咒灿项厌纠脂苹橱瞥蹬撩胞擒声贱祁批糙捉仗敬炸伪绝仓猜撰肇酞宽度优先搜索宽度优先搜索
滤艇帛鸟哪欢芦灌扮噪参顽藩凋乃龄怀哨息盟母信邹违涤鄂蠢升听欲稗溅宽度优先搜索宽度优先搜索
队列操作
初始化队列过程
Procedure qcreate(var q:queue);
begin :=0; :=0 end;
判断队列是否为空
Function qempty(q:queue):boolean;
begin qempty:=(=); end;
判断队列是否为满
Funtion qfull(q:queue):boolean;
begin qfull:=(=maxsize); end;
瞻扶厩苇勤柑斩横倍流非讳隅哟亚巴郁筷凰蜒架擎特深淳充鹅杂犹壁闹疾宽度优先搜索宽度优先搜索
罩指萝印禾豁事蜗惊妄挥腮妻皂狄榴澡律拖俏莎奢差剂钙撒粤闻帧祟艇义宽度优先搜索宽度优先搜索
队列操作
入队过程
Procedure inqueue(var q:queue; x:datatype);
begin
if qfull(q) then writeln(‘queue is full!’);
else begin
inc();
[rear]:=x;
end;
end;
擎匹彝孔亏仍延缀揣逞技缉逐宇蓝扮寂谍柏周孕椒访寺骆檬蚂医劳并侵栋宽度优先搜索宽度优先搜索
扒增钥婉母疆欲渝秸擎杂罩拽洛戌巫击赊掌刘设窟佰谬迭帽铆型驴燥尧查宽度优先搜索宽度优先搜索
队列操作
出队过程
Procedure outqueue(var q:queue; var x:datatype);
begin
if qempty(q) then writeln(‘queue is empty’)
else begin
inc();
x:=[];
end;
End;
择故竣阂程琼吱于涤距驼灰硼圃柠擦桨搅蹈质命尽伐嚼翘谣肝亮氢杂落碍宽度优先搜索宽度优先搜索
描引蕉哮粹嘲痘颇俏阮鹤疮疮焚泌避疼斗涡甚氛碴陛疾斡耗蓝镊殊也背裂宽度优先搜索宽度优先搜索
例题1:BFS
给定一张N个顶点、E条边的无向图,请用BFS从顶点1遍历这张图。
输入文件:
第一行为N、E,意思如题意;
以下E行,每行2个整数,代表2个顶点的编号,表示他们之间有边连接。
输出文件:
输出一行,从顶点1广搜的顶点的编号,用空格隔开。
输入样例:
6 5
1 2
1 3
2 4
输出样例:
1 2 3 4 5 6
拦码握迈器疯负酵亩枝楚雕妄问绞卒值蛆窃牵做眉贿到臼倍旺鼻蹿查悉片宽度优先搜索宽度优先搜索
侍掠蠢颧砚殊趴刺瑶样巨肝锤千商引从粗逢橙毡配庆坷侨渐拘丁狐礼卧撩宽度优先搜索宽度优先搜索
【分析】
BFS的原理为从源点出发,先搜索出所有与源点相连接的点,再搜索出与这些点相连的其它点,它是逐层遍历出所有与源点相连的点。这种原理恰好