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

中国制造网网站特色中间商网站怎么做

中国制造网网站特色,中间商网站怎么做,中国建设银行网站怎么改支付密码忘了怎么办,郑州网站改版公司【题目链接】 ybt 1375#xff1a;骑马修栅栏(fence) 洛谷 P2731 [USACO3.3]骑马修栅栏 Riding the Fences 【题目考点】 1. 图论#xff1a;欧拉回路 欧拉回路存在的条件#xff1a;图中所有顶点的度都是偶数欧拉路径存在的条件#xff1a;图中只有两个度为奇数的顶点…【题目链接】 ybt 1375骑马修栅栏(fence) 洛谷 P2731 [USACO3.3]骑马修栅栏 Riding the Fences 【题目考点】 1. 图论欧拉回路 欧拉回路存在的条件图中所有顶点的度都是偶数欧拉路径存在的条件图中只有两个度为奇数的顶点。而且这两个顶点是欧拉路径的起点与终点。 求解欧拉回路使用Hierholzer算法 复杂度O(VE)O(VE)O(VE) 【解题思路】 该图是无向图顶点就是图中的顶点栅栏是边。 “栅栏都是连通的”意味着这是一个无向连通图。 “使每个栅栏都恰好被经过一次”就是每条边都经过一次。该问题为求欧拉路径。可以使用Hierholzer算法解决。 “两顶点间可能有多个栅栏”意味着可能有重边但Hierholzer算法可以处理有重边或自环的图。 “输出500进制表示法中最小的一个”即为输出字典序最小的欧拉路径顶点序列。 只需要在实现Hierholzer算法时包括选择起始顶点或某顶点的邻接点时尽量选择编号较小的顶点来访问即可。 在输入边时统计顶点编号的最大值作为总顶点数量。 首先从小到大遍历所有顶点 如果存在奇数度的顶点选择该顶点作为起始点。如果不存在奇数度的顶点那么所有顶点的度都是偶数任选顶点作为起始点。这里选择1号顶点为起始点。 从起始顶点出发进行深搜使用Hierholzer算法求欧拉路径。为了满足条件必须按顶点编号从小到大访问一个顶点的所有邻接点。 可以使用邻接矩阵或邻接表完成该题。 【题解代码】 解法1邻接矩阵 #includebits/stdc.h using namespace std; #define N 505 int edge[N][N], n, m, deg[N];//n:顶点数 m:边数 deg[i]:顶点i的度 stackint stk; void dfs(int u)//Hierholzer算法 {for(int v 1; v n; v){if(edge[u][v]){edge[u][v]--;edge[v][u]--;dfs(v);}}stk.push(u); } int main() {int f, t, st 1;//st:起点 cin m;for(int i 1; i m; i){cin f t;n max(n, max(f, t));edge[f][t];edge[t][f];deg[f];deg[t];}for(int v 1; v n; v)//如果找到奇数度顶点就从奇数度顶点出发否则从1出发 {if(deg[v] % 2 1){st v;break;}}dfs(st);while(stk.empty() false){cout stk.top() endl;stk.pop();}return 0; }解法2邻接表 #includebits/stdc.h using namespace std; #define N 505 #define M 1050 struct Node {int v, e;//v顶点 e边编号 Node(){}Node(int a, int b):v(a), e(b){} }; int n, m, beg[N], deg[N];//n:顶点数 m:边数 deg[i]:顶点i的度 beg[i]:顶点i的邻接点从edge[i][beg[i]]开始 bool vis[M];//vis[i]边i是否已访问过 vectorNode g[N]; stackint stk; bool cmp(Node a, Node b) {return a.v b.v; } void dfs(int u)//Hierholzer算法 {for(int i beg[u]; i g[u].size(); i){int v g[u][i].v, e g[u][i].e;if(vis[e] false){vis[e] true;dfs(v);}}stk.push(u); } int main() {int f, t, st 1;//st:起点 cin m;for(int i 1; i m; i){cin f t;n max(n, max(f, t));g[f].push_back(Node(t, i));g[t].push_back(Node(f, i));deg[f];deg[t];}for(int v 1; v n; v)sort(g[v].begin(), g[v].end(), cmp);for(int v 1; v n; v){//如果找到奇数度顶点就从奇数度顶点出发否则从1出发 if(deg[v] % 2 1){st v;break;}}dfs(st);while(stk.empty() false){cout stk.top() endl;stk.pop();}return 0; }
http://www.eeditor.cn/news/126719/

相关文章:

  • 凡科网之前做的网站在哪看吕梁网站建设
  • 公司网站在哪备案郑州网站建设公司电话多少
  • 网站 用户体验网站上做值机的app
  • 佛山网站的优化wordpress自动分享插件
  • 在线网站流量查询室内装修公司哪家好
  • 房产类网站建设上海本地生活论坛
  • 网站解析是什么意思作品集怎么做网页
  • 官网做有下拉列表的网站的图片宁波公司网站开发
  • 功能型网站开发做视频网站视频短片
  • 网站备案号申请网站开发学什么语音
  • 自动生成海报的网站个人养老保险怎么买
  • 淘宝客网站模板下载卖机器的网站怎么做
  • 十天学会网站建设排名优化上首页怎么做
  • 纹身网站建设石家庄划定6个高风险区
  • 怎么能将网站做的不简单适合做模型的著名建筑
  • 太原手机网站建设免费全面的seo教程
  • 网站开发教程收费版南部县建设局网站
  • 集团公司网站开发方案网页版传奇公益服
  • 户外旅游网站模板wordpress 畅言
  • 西部数码网站工具普通网站和营销型网站的区别
  • 郑州恩恩网站建设做网站首页cdr
  • jsp网站开发登陆顺企网我做网站
  • 学校网站建设源码百度开户需要什么资质
  • 建网站吧申请一个网站需要多少钱
  • 东莞网站优化哪个公司好智能营销型网站制作
  • 二级域名做很多网站wordpress网站特效
  • 网上购物网站设计美工招聘平台
  • 石家庄做网站哪家公司好四川网站建设益友
  • 服务器屏蔽网站seo推广软件排行榜前十名
  • 深圳公司网站建设怎么做电商运营