标签:++ 建立 size public pre 方式 erase solution cto
class Solution {
public:
vector<int> gardenNoAdj(int N, vector<vector<int>>& paths) {
vector<int> G[N];
for (int i=0; i<paths.size(); i++){//建立邻接表
G[paths[i][0]-1].push_back(paths[i][1]-1);
G[paths[i][1]-1].push_back(paths[i][0]-1);
}
vector<int> answer(N,0);//初始化全部未染色
for(int i=0; i<N; i++){//对每个结点
set<int> color{1,2,3,4};
for (int j=0; j<G[i].size(); j++){//当前结点的邻接点
color.erase(answer[G[i][j]]);//把已染过色的去除
}
answer[i]=*(color.begin());//染色
}
return answer;
}
};
存储方式:邻接表
标签:++ 建立 size public pre 方式 erase solution cto
原文地址:https://www.cnblogs.com/apo2019/p/13268600.html