当前位置: 首页 > wzjs >正文

用wordpress建站一个人可以吗视频网站seo怎么做

用wordpress建站一个人可以吗,视频网站seo怎么做,2022智慧树互联网与营销创新,求创意设计分享的网站文章目录 判断图是否有环,是一个技术性的问题,当一个图规定了起点的时候,我们只需设置一个visited数组(初始值为False),当接下来访问到的结点i是visited[i]True的时候,我们就可以说存在一个环了…

文章目录

  • 判断图是否有环,是一个技术性的问题,当一个图规定了起点的时候,我们只需设置一个visited数组(初始值为False),当接下来访问到的结点i是visited[i]=True的时候,我们就可以说存在一个环了,这样的话,时间复杂度就是o(n)
  • 但是,如果图并有规定从哪一个顶点开始,那么我们应该如何判断这个图中是否存在环?由于没有规定是从哪一个点作为遍历的开始,所以要是采用上面的思路进行的话,就需要考虑从每一个点作为起点的情况,那么这样的话,时间复杂度就会来到o(n^2),那么应该怎么办?

下面介绍三色标记法,也就是将结点分为,未被访问、正在访问、已经访问过,这三种情况

三色标记法

  • 具体思路:
  • 对于每一个节点x,都定义三种颜色值(状态值):
  • 0,节点x尚未被访问到
  • 1,节点x正在访问中,dfs(x)尚未结束
  • 2,节点x已经完全访问完毕,dfs(x)已经返回

注意:只使用两种状态是不能处理是否存在环的

我们所说的,节点x正在访问中,是说我们正在递归处理节点x以及它的后续节点,dfs(x)尚未结束

  • 时间复杂度:每个节点只会被访问一次,每一条边也会被访问一次,所以时间复杂度是o(N+E)

在这里插入图片描述
在这里插入图片描述

  • 思路分析:直接套用三色标记法即可

Python思路

class Solution:def canFinish(self, numCourses: int, prerequisites: List[List[int]]) -> bool:g = [[] for _ in range(numCourses)]for a, b in prerequisites:g[b].append(a)colors = [0] * numCourses# 返回 True 表示找到了环def dfs(x: int) -> bool:colors[x] = 1  # x 正在访问中for y in g[x]:if colors[y] == 1 or colors[y] == 0 and dfs(y):return True  # 找到了环colors[x] = 2  # x 完全访问完毕return False  # 没有找到环for i, c in enumerate(colors):if c == 0 and dfs(i):return False  # 有环return True  # 没有环

C++思路

class Solution {
public:bool canFinish(int numCourses, vector<vector<int>>& prerequisites) {vector<vector<int>> g(numCourses);for (auto& p : prerequisites) {g[p[1]].push_back(p[0]);}vector<int> colors(numCourses);// 返回 true 表示找到了环auto dfs = [&](this auto&& dfs, int x) -> bool {colors[x] = 1; // x 正在访问中for (int y : g[x]) {if (colors[y] == 1 || colors[y] == 0 && dfs(y)) {return true; // 找到了环}}colors[x] = 2; // x 完全访问完毕return false; // 没有找到环};for (int i = 0; i < numCourses; i++) {if (colors[i] == 0 && dfs(i)) {return false; // 有环}}return true; // 没有环}
};

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 思路分析:

python代码

class Solution {
public:bool canFinish(int numCourses, vector<vector<int>>& prerequisites) {vector<vector<int>> g(numCourses);for (auto p: prerequisites){g[p[1]].push_back(p[0]);}vector<int> colors(numCourses);auto dfs = [&](this auto && dfs,int x) -> bool{colors[x] = 1;for (int y : g[x]){if (colors[y] == 1 || colors[y] == 0 && dfs(y)){return true;}}colors[x] = 2;return false;};for (int i = 0; i < numCourses; i++){if (colors[i] == 0 && dfs(i)){return false;}}return true;}
};
http://www.dtcms.com/wzjs/585796.html

相关文章:

  • 教人做衣服的网站郴州新网二手房出售
  • 最早做弹幕的网站网站字体加载不出来怎么办
  • 做网站的技术风险网站建设费用一年
  • 大型网站开发 框架手机做网站过程
  • 怎么看一个网站是什么时候做的网站seo工程师怎么做
  • 涪城网站建设郑州网站建设搜q.479185700
  • 长春火车站建在哪里室内设计联盟邀请码免费
  • 超酷网站网站怎么装模版
  • 太原高端网站建设2022年黄台片区
  • 做微网站需要域名吗门户系统登录
  • 网站开发相关知识求个网站或者app
  • 营销网站制作图片优秀网站案例欣赏
  • 郑州网站建设公司锐客科技自己建一个网站做电子商务
  • 在哪个网站做外贸生意好北京住房和建设部网站
  • 网站的模板网站运营者是做啥工作的
  • 成都游戏网站开发网站开发工程师的职责
  • 开启wordpress多站点国内网站建设推荐
  • 宁波网站建设i sp.netctoc的网站有哪些
  • 某互联网公司触屏网站微信公众号怎么做好看
  • 企业资质证书查询官方网站做外贸网站要多少钱
  • 网站做描本好处阿里云服务器 怎么设置网站环境
  • 网站 参数设置苏州科建设交通学院网站
  • 有什么软件做短视频网站深圳网站建设公司网络服务
  • 网站建设的软件知识有哪些内容英语网站建设费用
  • 河南专业网站建设招聘商洛网站设计
  • 做网站推广的优势青岛网络有限公司
  • 鹤山市城乡住房建设部网站地方房产网站APP如何做
  • 商城网站模板 免费图片生成链接在线工具
  • 阜康网站建设房地产公司网站建设模板
  • 网站怎么做下载内容珠海网站建设网络推广