二分图判定

BFS 交替染色:相邻顶点必须异色。染色完成无冲突即二分图;同色相邻说明存在奇环。

二分图判定
第 01 / 14 步
二分图判定:BFS 交替染色。相邻顶点必须异色;出现同色相邻即非二分图。 比较 0 · 交换 0
伪代码

				
					
					1
					// 二分图判定:BFS 交替染色
				
			
				
					
					2
					color[所有] ← 未染色
				
			
				
					
					3
					for each 未染色的 v:
				
			
				
					
					4
					  color[v] ← A
				
			
				
					
					5
					  queue ← [v]
				
			
				
					
					6
					  while queue not empty:
				
			
				
					
					7
					    u ← dequeue
				
			
				
					
					8
					    for each (u, w):
				
			
				
					
					9
					      if color[w] == color[u]: 不是二分图
				
			
				
					
					10
					      if color[w] 未染色: color[w] ← 相反色; enqueue(w)
				
			
				
					
					11
					end for
				
			
01 / 14
速度