
图
cx_cs
这个作者很懒,什么都没留下…
展开
-
133. 克隆图
无原创 2023-03-09 11:01:45 · 75 阅读 · 0 评论 -
399. 除法求值
要求:除法,输入:equations = [[“a”,“b”],[“b”,“c”]], values = [2.0,3.0], queries = [[“a”,“c”],[“b”,“a”],[“a”,“e”],[“a”,“a”],[“x”,“x”]]输出:[6.00000,0.50000,-1.00000,1.00000,-1.00000]法一:bfsclass Solution {public: unordered_map<string, vector<pair<stri原创 2022-03-23 19:53:00 · 178 阅读 · 0 评论 -
684. 冗余连接
要求:无向图多了一条边成环删边思路:用并查集,一个连通分量根是父等于自己,合并只要合并父,如果一条边两个节点的父一样则再加上这条边就有环了class Solution {public: vector<int> parent; int find(int index){ if(parent[index]!=index) return find(parent[index]); return index; }原创 2022-01-22 10:38:11 · 72 阅读 · 0 评论 -
210. 课程表 II
要求:拓扑排序课程表思路:class Solution {public: vector<int> findOrder(int numCourses, vector<vector<int>>& prerequisites) { vector<vector<int>> edges(numCourses); vector<int> in(numCourses); vecto原创 2022-01-22 10:02:54 · 276 阅读 · 0 评论 -
207. 课程表
要求:拓扑排序问题,判断环思路:法一:dfs,不能以一个节点为开始判断是否会回到该节点,如1指向2,2,3,4之间循环,这样只能暴力太慢。改进一下其实很简单,visited三种状态,0表示未访问,1表示正在访问,2表示已完成访问,遍历到i节点的节点j时,直接dfs j,如果存在环的话j在过程中会碰到处在1状态的i,这时候ans为falseclass Solution {public: bool ans=true; void dfs(vector<vector<int>原创 2022-01-21 21:47:50 · 192 阅读 · 0 评论 -
785. 判断二分图
要求:节点是0到n-1,判断能不能染两种色,相邻不一样思路:子节点如果被染过了且跟要染的不一样则false,如果没染过直接染并遍历class Solution {public: bool ans=true; void dfs(vector<vector<int>>& graph,vector<int>& v,int i){ if(!ans)return; int color; if(v[原创 2022-01-21 20:51:39 · 71 阅读 · 0 评论