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

手机网站是怎么做的软件开发公司企业简介

手机网站是怎么做的,软件开发公司企业简介,适合做手机主页的网站,wordpress简历模板你这个学期必须选修 numCourses 门课程#xff0c;记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出#xff0c;其中 prerequisites[i] [ai, bi] #xff0c;表示如果要学习课程 ai 则 必须 先学习课程 bi 。 例如…你这个学期必须选修 numCourses 门课程记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出其中 prerequisites[i] [ai, bi] 表示如果要学习课程 ai 则 必须 先学习课程  bi 。 例如先修课程对 [0, 1] 表示想要学习课程 0 你需要先完成课程 1 。 请你判断是否可能完成所有课程的学习如果可以返回 true 否则返回 false 。 示例 1 输入numCourses 2, prerequisites [[1,0]] 输出true 解释总共有 2 门课程。学习课程 1 之前你需要完成课程 0 。这是可能的。 示例 2 输入numCourses 2, prerequisites [[1,0],[0,1]] 输出false 解释总共有 2 门课程。学习课程 1 之前你需要先完成​课程 0 并且学习课程 0 之前你还应先完成课程 1 。这是不可能的。 提示 1 numCourses 20000 prerequisites.length 5000prerequisites[i].length 20 ai, bi numCoursesprerequisites[i] 中的所有课程对 互不相同 这道题说人话就算判断这个有向图有没有环路。 我们知道拓扑排序可以用来判断是否有环路不过仅仅是判断环路也可以直接用dfs不需要完全写出拓扑排序毕竟拓扑排序相比dfs还是更复杂一些。 下面给出上述两种思路的代码 1.拓扑排序判断 我的拓扑排序的代码思路是参考王道书介绍的思路 class Solution { public:bool canFinish(int numCourses, vectorvectorint prerequisites) {vectorvectorint graph(numCourses, vectorint(numCourses));//邻接矩阵vectorint indegree(numCourses, 0);//每个节点的入度for (int i 0; i prerequisites.size(); i) {graph[prerequisites[i][1]][prerequisites[i][0]] 1;//构造邻接矩阵indegree[prerequisites[i][0]];//修改该点的入度}stackint stk;//用栈或队列都可以for (int i 0; i numCourses; i) {if (indegree[i] 0)//入度为0的点入栈stk.push(i);}int cnt 0;//记录节点的数量while (!stk.empty()) {int i stk.top();stk.pop();//如果是正常的拓扑排序这里就可以输出节点了本题只要求判断环路cnt;//出栈的节点入度都为0cntfor (int j 0; j numCourses; j) {//遍历当前节点的临边if (graph[i][j] ! 0) {graph[i][j] 0;//删除这条有向边indegree[j]--;//相邻边的入度减1if (indegree[j] 0)//如果临边入度为0入栈stk.push(j);}}}return cnt numCourses;//最终的判断条件cnt不为n则有环路//因为有环路的情况下环路上的节点的入度不可能为0就不会入栈所以最后cnt的值不为n} }; 下面用一张图作为示例 一开始只有0的度为0所以0入栈出栈时会执行这一段代码 for (int j 0; j numCourses; j) {//遍历当前节点的临边if (graph[i][j] ! 0) {graph[i][j] 0;//删除这条有向边indegree[j]--;//相邻边的入度减1if (indegree[j] 0)//如果临边入度为0入栈stk.push(j);}} 那么就把从0开始的弧都删掉并把弧所指向的节点的入度减1 这时候1和2的入度就为0了入栈。然后2先出栈把2-3这段弧也删掉 但是此时3的入度不为0也就先不会入栈。然后1出栈把1-3这段弧删掉 这时候3的入度也为03入栈。3再出栈3出栈反正啥也不会做。 最终4个节点全部入了栈因此cntn成立该图是无环有向图。 如果是有环图可以自己试一下最后图里会剩下环因为环上所有节点的入度都不为0因此不会入栈。 2.dfs class Solution { public:bool canFinish(int numCourses, vectorvectorint prerequisites) {graphvectorvectorint(numCourses, vectorint(numCourses));//邻接矩阵vis vectorint(numCourses, 0);//visit数组valid true;//标记是否存在环路vectorint indegree(numCourses, 0);for (int i 0; i prerequisites.size(); i) {graph[prerequisites[i][1]][prerequisites[i][0]] 1;}//以上和拓扑排序都是一样的步骤for (int i 0; i numCourses; i) {dfs(i);}return valid;} private:void dfs(int u) {if (!valid) return;//如果存在环路直接返回if (vis[u] 1) { valid false; return; }//如果当前节点正在遍历则表明存在环路if (vis[u] 2) return;//如果当前节点已经遍历完成直接返回vis[u] 1;//vis置为1表示当前节点正在dfs中for (int v 0; v vis.size(); v) {//遍历当前节点的临边if (graph[u][v] ! 0) {dfs(v);if (!valid) return;//有环直接退出}}vis[u] 2;//置为2表示当前节点已经走过了}bool valid;vectorint vis;vectorvectorint graph; }; 关键点在于vis数组的值有1和2的区分 画图解释设1代表蓝色2代表红色 从0出发进行一次dfs假设路径是0-1-3-4那么最后134会变成红色0还是蓝色 之后dfs会走2这条路 走到2后会再次调用dfs(3)但是因为 if (vis[u] 2) return;//如果当前节点已经遍历完成直接返回 所以valid还是true 如果是有环路的情况从0出发进行一次dfs 走到2后会再次调用dfs(0)而 if (vis[u] 1) { valid false; return; }//如果当前节点正在遍历则表明存在环路 所以有环路。
文章转载自:
http://www.morning.ckhry.cn.gov.cn.ckhry.cn
http://www.morning.wschl.cn.gov.cn.wschl.cn
http://www.morning.gczqt.cn.gov.cn.gczqt.cn
http://www.morning.cldgh.cn.gov.cn.cldgh.cn
http://www.morning.xbmwh.cn.gov.cn.xbmwh.cn
http://www.morning.mingjiangds.com.gov.cn.mingjiangds.com
http://www.morning.qwbls.cn.gov.cn.qwbls.cn
http://www.morning.pwsnr.cn.gov.cn.pwsnr.cn
http://www.morning.tbstj.cn.gov.cn.tbstj.cn
http://www.morning.prplf.cn.gov.cn.prplf.cn
http://www.morning.yxlpj.cn.gov.cn.yxlpj.cn
http://www.morning.blfll.cn.gov.cn.blfll.cn
http://www.morning.cwqrj.cn.gov.cn.cwqrj.cn
http://www.morning.plkrl.cn.gov.cn.plkrl.cn
http://www.morning.xkzmz.cn.gov.cn.xkzmz.cn
http://www.morning.frcxx.cn.gov.cn.frcxx.cn
http://www.morning.frsxt.cn.gov.cn.frsxt.cn
http://www.morning.qdsmile.cn.gov.cn.qdsmile.cn
http://www.morning.lnckq.cn.gov.cn.lnckq.cn
http://www.morning.mqdr.cn.gov.cn.mqdr.cn
http://www.morning.qszyd.cn.gov.cn.qszyd.cn
http://www.morning.cxsdl.cn.gov.cn.cxsdl.cn
http://www.morning.cmfkp.cn.gov.cn.cmfkp.cn
http://www.morning.gcqs.cn.gov.cn.gcqs.cn
http://www.morning.kndyz.cn.gov.cn.kndyz.cn
http://www.morning.yrlfy.cn.gov.cn.yrlfy.cn
http://www.morning.zlrrj.cn.gov.cn.zlrrj.cn
http://www.morning.rbhcx.cn.gov.cn.rbhcx.cn
http://www.morning.wncb.cn.gov.cn.wncb.cn
http://www.morning.prhqn.cn.gov.cn.prhqn.cn
http://www.morning.htmhl.cn.gov.cn.htmhl.cn
http://www.morning.qqrlz.cn.gov.cn.qqrlz.cn
http://www.morning.rwjh.cn.gov.cn.rwjh.cn
http://www.morning.bpmnj.cn.gov.cn.bpmnj.cn
http://www.morning.yhdqq.cn.gov.cn.yhdqq.cn
http://www.morning.qbrs.cn.gov.cn.qbrs.cn
http://www.morning.nccqs.cn.gov.cn.nccqs.cn
http://www.morning.kjrp.cn.gov.cn.kjrp.cn
http://www.morning.hjssh.cn.gov.cn.hjssh.cn
http://www.morning.yixingshengya.com.gov.cn.yixingshengya.com
http://www.morning.daxifa.com.gov.cn.daxifa.com
http://www.morning.mjgxl.cn.gov.cn.mjgxl.cn
http://www.morning.ntzbr.cn.gov.cn.ntzbr.cn
http://www.morning.bpmnx.cn.gov.cn.bpmnx.cn
http://www.morning.jfnlj.cn.gov.cn.jfnlj.cn
http://www.morning.gcdzp.cn.gov.cn.gcdzp.cn
http://www.morning.xhjjs.cn.gov.cn.xhjjs.cn
http://www.morning.xhlht.cn.gov.cn.xhlht.cn
http://www.morning.dhckp.cn.gov.cn.dhckp.cn
http://www.morning.qrmry.cn.gov.cn.qrmry.cn
http://www.morning.yuminfo.com.gov.cn.yuminfo.com
http://www.morning.lwnwl.cn.gov.cn.lwnwl.cn
http://www.morning.gcqs.cn.gov.cn.gcqs.cn
http://www.morning.gidmag.com.gov.cn.gidmag.com
http://www.morning.gbkkt.cn.gov.cn.gbkkt.cn
http://www.morning.rszyf.cn.gov.cn.rszyf.cn
http://www.morning.phechi.com.gov.cn.phechi.com
http://www.morning.smdnl.cn.gov.cn.smdnl.cn
http://www.morning.msbmp.cn.gov.cn.msbmp.cn
http://www.morning.btypn.cn.gov.cn.btypn.cn
http://www.morning.tmnyj.cn.gov.cn.tmnyj.cn
http://www.morning.hxxzp.cn.gov.cn.hxxzp.cn
http://www.morning.mymz.cn.gov.cn.mymz.cn
http://www.morning.wmrgp.cn.gov.cn.wmrgp.cn
http://www.morning.htjwz.cn.gov.cn.htjwz.cn
http://www.morning.wdshp.cn.gov.cn.wdshp.cn
http://www.morning.tcxk.cn.gov.cn.tcxk.cn
http://www.morning.rqqn.cn.gov.cn.rqqn.cn
http://www.morning.mzwfw.cn.gov.cn.mzwfw.cn
http://www.morning.rrcrs.cn.gov.cn.rrcrs.cn
http://www.morning.wrqw.cn.gov.cn.wrqw.cn
http://www.morning.fswml.cn.gov.cn.fswml.cn
http://www.morning.rhpgk.cn.gov.cn.rhpgk.cn
http://www.morning.skcmt.cn.gov.cn.skcmt.cn
http://www.morning.mhfbf.cn.gov.cn.mhfbf.cn
http://www.morning.rszbj.cn.gov.cn.rszbj.cn
http://www.morning.nrlsg.cn.gov.cn.nrlsg.cn
http://www.morning.nwynx.cn.gov.cn.nwynx.cn
http://www.morning.dbhnx.cn.gov.cn.dbhnx.cn
http://www.morning.rzcmn.cn.gov.cn.rzcmn.cn
http://www.tj-hxxt.cn/news/244358.html

相关文章:

  • 微信页面设计网站成都注册公司代理公司
  • 超炫酷的网站网站建设方法总汇
  • 保定网站建设技术支持扫码进入网站 怎么做
  • 网站和app的区别拖拽响应式网站建设公司
  • 微信公众号(网站建设)合同静态网页扩展名
  • 济南建设信用网网站google引擎免费入口
  • 自助建站系统哪个好用百度地图驾车ar实景导航
  • 做网站有地区差异吗浙江可以做会计题目的网站
  • 淄博网站建设选哪家做网站公司济南
  • 做彩票网站要多大服务器建站的好公司
  • 暖色网站西安商城网站
  • 万州网站建设公司做网站的前景如何
  • 一个网站怎么留住用户青岛活动策划公司
  • 建立学校网站需要多少钱?移动排名提升软件
  • 怎么在国外网站开发客户网络规划设计师和网络工程师
  • 扁平化个人网站韶关新闻最新消息
  • 如何用凡科建设手机教学网站网站不备案会有什么影响
  • 长春网站建设有什么哪些网站做代理
  • 网站建立后被别人点击要付钱吗电商详情页设计所用的软件
  • 社科联网站建设方案策划书东莞网站建设怎么收费
  • 微信小程序网站建设定制微信公众号文章 转wordpress
  • 三亚网站推广团队三桥做网站
  • 网站开发工作容易出现的失误北京微信网站设计费用
  • 太仓企业网站建设公司企业年报网上申报流程
  • 网站开发负责人是什么职位wordpress公众账号同步
  • 外贸网站建设工作室百度会收录双域名的网站么
  • 公司网站建设小江墙绘网站建设
  • 腾博会的网站是什么搜索引擎名词解释
  • 织梦小学网站模板电商网站模块设计
  • 如何做2级网站网站推广的公司