做铝材什么什么网站好wordpress 静止ip访问

张小明 2026/1/11 4:38:56
做铝材什么什么网站好,wordpress 静止ip访问,第一次打开wordpress白,wordpress sdk.js好卡文章目录DFSdfs是什么#xff1f;核心深度优先回溯标记已访问节点练习题BFS引入解释练习题优化引入剪枝方法记忆化搜索最优性剪枝可行性剪枝练习题DFS dfs是什么#xff1f; 深度优先搜索算法#xff08;Depth First Search#xff0c;简称DFS#xff09;#xff0c;一…文章目录DFSdfs是什么核心深度优先回溯标记已访问节点练习题BFS引入解释练习题优化引入剪枝方法记忆化搜索最优性剪枝可行性剪枝练习题DFSdfs是什么深度优先搜索算法Depth First Search简称DFS一句话总结DFS 是一种“一条路走到黑撞墙再回头”的算法像极了玩迷宫游戏时的策略。核心目标遍历或搜索树、图中的所有可能路径。通俗比喻假设你被困在一个迷宫里入口是起点S出口是终点T路.可以走墙*不能走。DFS 的策略是遇到岔路时随便选一条路比如先右转。走到死胡同时原路返回到上一个岔路口换另一条路继续走。最终找到出口如果存在的话但可能绕远路。核心深度优先思想优先往深处探索直到无路可走。举例假设迷宫中有三条分叉路A→B→C死胡同、A→D→E→T出口。DFS 会先走 A→B→C发现是死胡同后回退到 A再走 A→D→E→T。回溯思想走到尽头后回退到上一个岔路口换另一条路继续探索。关键操作递归返回时恢复状态比如取消标记。举例在迷宫 A→B→C 中回退到 B 时需要将 C 标记为未访问否则后续路径无法重新探索 C。标记已访问节点思想记录走过的节点避免重复访问和死循环。关键操作用一个数组visitedvis记录是否访问过某个位置。举例在迷宫中如果从 A→B→A环路未标记会导致无限循环。标记后第二次访问 A 时会直接跳过。练习题表示上下左右的方向数组intdir[4][2]{{0,1},{0,-1},{-1,0},{1,0}};或intdx[4]{0,0,1,-1},dy[4]{1,-1,0,0};迷宫一#includebits/stdc.husingnamespacestd;constintN11;intn,m,vis[N][N];chara[N][N];constintdir[4][2]{{-1,0},{1,0},{0,1},{0,-1}};boolf;voiddfs(intx,inty){if(a[x][y]T){f1;return;}for(intk0;k4;k){intxxxdir[k][0];intyyydir[k][1];if(xx1xxnyy1yyma[xx][yy]!*!vis[xx][yy]){vis[xx][yy]1;dfs(xx,yy);}}}voidsolve(){cinnm;intx-1,y-1;for(inti1;in;i){for(intj1;jm;j){cina[i][j];if(a[i][j]S){xi,yj;}}}dfs(x,y);if(f){coutyes\n;}else{coutno\n;}}intmain(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);intT1;// cinT;while(T--)solve();return0;}BFS引入广度优先搜索算法Breadth First Search简称BFS通常指利用队列结构逐层扩展状态的搜索方式适合求解最短路径或最少步骤类问题。解释核心思想按层扩展从起点开始逐层扫描可到达的位置。首次遇到终点时的路径长度即为最短路径。这种方式保证了搜索的层次性与最优性。基本流程在实际执行中BFS 会从起点出发先访问起点的所有直接可到达结点这些可到达结点构成了搜索的第一层接着再以这些可到达结点为新的起点依次访问它们的邻居形成第二层以此类推不断向外扩展直至找到目标结点或遍历完所有可达结点。这个过程中算法会借助队列和访问数组vis将每一层新发现的结点访问数组中还没有记录过的依次入队确保同一层的结点按照访问顺序依次被处理从而严格遵循「按层扩展」的逻辑。复杂度O(n)练习题迷宫二#includebits/stdc.husingnamespacestd;constintN15;typedefpairint,intPII;intn,m,vis[N][N],dist[N][N];charg[N][N];constintdir[4][2]{{-1,0},{1,0},{0,1},{0,-1}};voidsolve(){cinnm;for(inti1;in;i){for(intj1;jm;j){dist[i][j]1e9;}}intx-1,y-1;for(inti1;in;i){for(intj1;jm;j){cing[i][j];if(g[i][j]S){xi,yj;}}}queuePIIq;q.push({x,y});vis[x][y]1;dist[x][y]0;while(!q.empty()){auto[x,y]q.front();q.pop();for(intk0;k4;k){intxxxdir[k][0];intyyydir[k][1];if(xx1xxnyy1yymg[xx][yy]!*!vis[xx][yy]){vis[xx][yy]1;dist[xx][yy]dist[x][y]1;q.push({xx,yy});}}}for(inti1;in;i){for(intj1;jm;j){if(g[i][j]T){cout(dist[i][j]1e9?-1:dist[i][j])\n;return;}}}}intmain(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);intT1;// cinT;while(T--)solve();return0;}优化引入DFS深度优先搜索是一种常见的算法大部分的题目都可以用 DFS 解决但是大部分情况下由于DFS复杂度比较高可以考虑使用一些实用的优化算法降低复杂度俗称剪枝。常见的深搜模板之后的模板将在此基础上进行修改。intans最坏情况,now;// now 为当前答案voiddfs(传入数值){if(到达目的地)ans从当前解与已有解中选最优;for(遍历所有可能性)if(可行){进行操作;dfs(缩小规模);撤回操作;}}其中的 ans 可以是解的记录那么从当前解与已有解中选最优就变成了输出解。剪枝方法最常用的剪枝有三种记忆化搜索、最优性剪枝、可行性剪枝。记忆化搜索记忆化搜索是一种通过记录已经遍历过的状态的信息从而避免对同一状态重复遍历的搜索实现方式。因为记忆化搜索确保了每个状态只访问一次它也是一种常见的动态规划实现方式。在搜索中相同的传入值往往会带来相同的解那我们就可以用数组来记忆。模板intg[MAXN];// 定义记忆化数组intans最坏情况,now;voiddfs(传入数值){if(g[规模]!无效数值)return;// 或记录解视情况而定if(到达目的地)ans从当前解与已有解中选最优;// 输出解视情况而定for(遍历所有可能性)if(可行){进行操作;dfs(缩小规模);撤回操作;}}intmain(){memset(g,无效数值,sizeof(g));// 初始化记忆化数组}最优性剪枝在搜索中导致运行慢的原因还有一种就是在当前解已经比已有解差时仍然在搜索那么我们只需要判断一下当前解是否已经差于已有解。模板intans最坏情况,now;voiddfs(传入数值){if(now比ans的答案还要差)return;if(到达目的地)ans从当前解与已有解中选最优;for(遍历所有可能性)if(可行){进行操作;dfs(缩小规模);撤回操作;}}可行性剪枝在搜索过程中当前解已经不可用了还继续搜索下去也是运行慢的原因。intans最坏情况,now;voiddfs(传入数值){if(当前解已不可用)return;if(到达目的地)ans从当前解与已有解中选最优;for(遍历所有可能性)if(可行){进行操作;dfs(缩小规模);撤回操作;}}练习题Missile Defence System考虑可行性剪枝考虑可行性剪枝可以用贪心的思想。如果对于一个导弹我们有两个递增装置都能够拦截它那么基于贪心我们一定会选择目前高度最高的一个去拦截它因为低的那一个“更有潜力”如现在有两个递增装置第一个依次拦截了高度为 2 5 8 的三枚导弹第二个拦截了 6 7 的两枚导弹那么如果又来了一发高度为 9 的导弹那么用第一个拦截一定会比第二个更优。递减装置同理。考虑最优性剪枝当目前答案已经大于已知最优答案时直接回溯即可。#includebits/stdc.husingnamespacestd;constintN55;intn,ans,a[N];vectorintup,down;voiddfs(intnow){intxup.size(),ydown.size();if(xyans)return;if(nown){ansmin(ans,xy);return;}for(inti0;ix;i){if(a[now]up[i]){inttempup[i];up[i]a[now];dfs(now1);up[i]temp;break;}}if(!x||up[x-1]a[now]){up.push_back(a[now]);dfs(now1);up.pop_back();}for(inti0;iy;i){if(a[now]down[i]){inttempdown[i];down[i]a[now];dfs(now1);down[i]temp;break;}}if(!y||down[y-1]a[now]){down.push_back(a[now]);dfs(now1);down.pop_back();}}voidsolve(){while(cinnn){ans1e9;up.clear(),down.clear();for(inti1;in;i)cina[i];dfs(1);coutans\n;}}intmain(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);intT1;// cinT;while(T--)solve();return0;}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站建设哈尔滨自建电商网站有哪些

3大理由告诉你为什么NocoBase是无代码开发的终极选择 【免费下载链接】nocobase 极易扩展的无代码/低代码开发平台。NocoBase is a scalability-first, open-source no-code/low-code platform to build internal tools. 项目地址: https://gitcode.com/GitHub_Trending/no/…

张小明 2026/1/1 12:29:27 网站建设

建站的注意事项网页设计案例图片

LangFlow用户反馈高频问题TOP10解答 在AI应用开发的浪潮中,越来越多团队开始尝试构建基于大语言模型(LLM)的智能系统。然而,LangChain这类强大框架的学习曲线陡峭,尤其对非技术背景的产品经理、业务分析师或研究型用户…

张小明 2026/1/1 12:29:23 网站建设

建设银行网站招聘官网网页特效代码大全

Langchain-Chatchat GDPR合规性实践:构建隐私优先的本地化AI问答系统 在企业加速数字化转型的今天,人工智能助手正从“锦上添花”变为“业务刚需”。无论是员工自助查询制度流程,还是客服系统快速响应客户问题,基于大语言模型的知…

张小明 2026/1/1 12:29:21 网站建设

网站如何实现微公众号模板制作精美

近期,艾瑞咨询发布了《2025 年中国营销智能体研究报告》(下简称《报告》),提出“到 2030 年,中国营销智能体市场规模预计将突破千亿元。” 同时,《报告》首次公布了 “2025 年中国营销智能体产业全景图” 。…

张小明 2026/1/1 12:29:18 网站建设

网站维护做啥的黑龙江省建筑工程网

Linly-Talker 支持背景音乐混音,视频更具感染力 在短视频当道、注意力稀缺的今天,一段数字人讲解视频能否留住观众,往往不只取决于内容本身——语气是否生动、画面是否流畅,更在于它有没有“情绪”。而真正能调动情绪的&#xff0…

张小明 2026/1/1 22:28:04 网站建设

网站备案部门做电影网站要怎么拿到版权

大家好,这里是G-LAB IT实验室。 近年来,随着信息技术的飞速发展,IT行业的认证证书变得愈加重要。 其中,华为认证的最高级别——HCIE(Huawei Certified ICT Expert)受到广泛关注。拿下这本证书,不…

张小明 2026/1/1 22:28:01 网站建设