数据结构王道P234第二题

复制代码
#include<iostream>
using namespace std;
int visit[MAxsize];
int color[MaxSize];//1表示红,2表示白; 
bool dfs(Graph G, int i){
	visit[i]=1;
	ArcNode *p;
    bool flag=1;
	for(p=G.vertices[i].firsrarc; p ; p=p->next){
		int j=p->adjvex;
		if(!visit[j]){//如果没访问过,j就涂上相反颜色,继续递归涂色 
			if(color[i]==1)color[j]=2;
			else color[j]=1;
			flag=flag&&dfs(G, j); 
		}
		else{//如果访问过,判断j与i相邻点颜色,是否相同,不相同说明涂失败了,直接返回false;如果不同,不用管继续递归涂色 
			if(color[j]==color[i]){
				return false;
			}
		}
	}
	return flag;
} 

int main()
{
	color[1]=1;//将第一个点染红
	bool flag=bfs(G, 1); 
	return 0;
}
相关推荐
budingxiaomoli11 小时前
算法--滑动窗口(二)
算法
ID_1800790547312 小时前
淘宝实时拍立淘按图搜索数据|商品详情|数据分析提取教程
算法·数据分析·图搜索算法
l1t12 小时前
Lua与LuaJIT的安装与使用
算法·junit·单元测试·lua·luajit
极客智造12 小时前
线性数据结构深度解析:数组、链表、栈与队列的实现与应用
数据结构·链表
渡我白衣12 小时前
C++ 同名全局变量:当符号在链接器中“相遇”
开发语言·c++·人工智能·深度学习·microsoft·语言模型·人机交互
Emilia486.13 小时前
【Leetcode&nowcode】代码强化练习(二叉树)
算法·leetcode·职场和发展
墨染点香13 小时前
LeetCode 刷题【135. 分发糖果】
算法·leetcode·职场和发展
Zhu_S W13 小时前
Redis跳表:高效有序数据结构的深度剖析
数据结构·数据库·redis
秋风战士13 小时前
通信算法之336 :3GPPMixed Mode Turbo Decoder
算法·matlab·fpga开发·信息与通信·基带工程
是那盏灯塔13 小时前
【算法】——动态规划之01背包问题
数据结构·c++·算法·动态规划