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

网站建设网站徒手整形培训贵州网站建设培训

网站建设网站徒手整形培训,贵州网站建设培训,怎么搭建自己的网站挣钱,搜索引擎的网址有哪些什么是哈密顿回路#xff1f; 哈密顿回路#xff08;Hamiltonian Cycle#xff09;是图论中的一个概念#xff0c;指的是在一个图中通过图的每个顶点恰好一次且仅一次#xff0c;并最终回到起始顶点的闭合回路。在一个哈密顿回路中#xff0c;除了起始和结束的顶点必须是…什么是哈密顿回路 哈密顿回路Hamiltonian Cycle是图论中的一个概念指的是在一个图中通过图的每个顶点恰好一次且仅一次并最终回到起始顶点的闭合回路。在一个哈密顿回路中除了起始和结束的顶点必须是同一个顶点并且这个顶点恰好出现两次之外其他每个顶点都恰好出现一次。哈密顿回路的命名来自于爱尔兰数学家威廉·罗伊兰·哈密顿。 判断是否存在哈密顿环问题是一个经典的NP完全问题这意味着目前没有已知的多项式时间算法能解决所有情况。对于一个含有 V V V个顶点和 E E E条边的图来说常见的算法时间复杂度如下 暴力搜索法尝试图中所有可能的顺序来查找哈密顿环。其时间复杂度为 O ( V ! ) O(V!) O(V!)因为需要检查每个顶点的所有排列。 回溯法在搜索过程中如果路径不满足条件则回退一步。这是一种改进的暴力法但最坏情况的时间复杂度仍然为 O ( V ! ) O(V!) O(V!)。 动态规划例如 Held-Karp 算法用于求解旅行商问题TSP该问题与哈密顿环问题紧密相关。Held-Karp算法使用动态规划其时间复杂度为 O ( V 2 2 V ) O(V^2 2^V) O(V22V)。 启发式算法如遗传算法、蒙特卡洛方法等并不保证总是能找到解决方案但在一些情况下它们可以在多项式时间内给出近似解。时间复杂度因算法和实现而异但通常比 O ( V 2 2 V ) O(V^2 2^V) O(V22V)要低。 判断给路径是否是哈密顿回路 只需要满足条件每个点经过一次并且是一个环路就行。像判断是否是给定图的拓扑排序一样按照流程走一遍就行。 优化代码 尽量不适用全局变量使用引用传参。将条件合并。 #include iostream #include vector #include unordered_setusing namespace std;bool isHamiltonianCycle(const vectorunordered_setint graph, const vectorint path) {if(path.front() ! path.back() || path.size() ! graph.size()) {return false;}unordered_setint visited;int lenpath.size();for(int i 0; i len - 1; i) {if(graph[path[i]].count(path[i1]) 0 || visited.count(path[i]) ! 0) {return false;}visited.insert(path[i]);}if(graph[path[len-2]].count(path.back()) ! 0)return true;else return false; }int main() {ios_base::sync_with_stdio(false);cin.tie(nullptr);int N, M;cin N;vectorunordered_setint graph(N 1);cin M;while(M--) {int u, v;cin u v;graph[u].insert(v);graph[v].insert(u);}int K;cin K;while(K--) {int n, v;cin n;vectorint path;path.reserve(n);//无所谓这改变的是capacity与resize不一样。while(n--) {cin v;path.emplace_back(v);}if(isHamiltonianCycle(graph, path)) {cout YES\n;} else {cout NO\n;}}return 0; } 动态规划最短哈密顿路径 最短哈密顿路径 该问题将在以后解释。
http://www.pierceye.com/news/105516/

相关文章:

  • 网站图片描述怎么写社区类网站有哪些
  • 网站竞争对手的选定一般参考什么标准的网站的推广方案的内容有哪些
  • 把别人的图片拿来做网站wordpress 覆盖原始图片对比效果
  • 江门市建设工程备案网站乌兰浩特网站开发
  • 个人介绍微电影网站模板免费下载一个网站的建设成本
  • 搬瓦工怎么做网站百度小程序开发教程
  • 织梦网站被攻击小型门户网站建设方案
  • 长沙网站托管公司排名静态网站结构如何更新
  • 网站建设 宜宾湖州网站建设培训教程
  • 网站建设脚本什么叫营销型网站
  • 沧州网站建设专业的公司4000-262-seo优化与品牌官网定制
  • 网页游戏推广网站怎么做如何创建平台类网站
  • 十堰英文网站建设学校教育网站模板
  • 学校网页网站模板免费下载微信的微网站
  • 网站开发的解决方案小型行业网站建设维护成本
  • 浏阳市网站建设百度中心人工电话号码
  • 高端外贸网站制作智慧团建网站没有验证码
  • 做网站需要买服务器么网站建设营销外包公司排名
  • 网站建设中要多使用图片258网站建设
  • 做多语言网站教程开网页慢是什么原因
  • 汽车商城网站模板seo公司网站推广
  • 网站备案查询工信部官网网站建设费用推荐网络专业
  • 网站开发费用是研发费用国内做seo最好公司
  • 什么是网站建设公司企业网站后台管理
  • 做网站阿里巴巴好还是百度好柠檬网络科技网站建设
  • 做个网站要多少钱网站建设工作 方案
  • 一个主体如何添加网站室内设计公司的名字
  • 中国建设学会网站洛阳市住房和城乡建设局网站
  • 北京网站优化方式做物流的网站都有什么风险
  • 零基础学做网站页怎么部署wordpress