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

算法练习-回溯

今天开始新的章节,关于算法中回溯法的练习,这部分题目的难度还是比较大的,但是十分锻炼人的思维与思考能力。

处理这类题目首先要注意几个基本点:

1.关于递归出口的设置,这是十分关键的,要避免死循环的产生。

2.

1.这是第一道题目

代码部分

这一道题很创新地引入了时间戳这一概念,这是用来记录节点关联问题之间的记录,可以通过时间戳来记录访问的顺序以此来统计在一个范围内节点的个数。

关于代码还有几个注意点:

1.关于mindfn的选用,将第一个开始记录的节点作为mindfn的首节点,这是为了防止第二个遍历开始,若访问到第一个环里面将无法构成一个完整的环状。

2.return 0不可以漏。

第二题

代码部分

第二道题是标准的dfs模型:

这里有几个注意点:

1.对于岛屿可以用scc颜色来染色以此来做相关标记。

2.注意(col[x][y]||mp[i][j]=='.')这里容易忽略col[x][y]这会造成遍历时左右两点来回横跳,造成影响。

好了今天的分享就到这里,希望大家可以多多关注哦。

http://www.lryc.cn/news/2404073.html

相关文章:

  • AI代码助手需求说明书架构
  • PTC过流保护器件工作原理及选型方法
  • RabbitMQ 在解决数据库高并发问题中的定位和核心机制
  • VSCode主题定制:CSS个性化你的编程世界
  • Windows 下彻底删除 VsCode
  • 一文带你入门Java Stream流,太强了,mysqldba面试题及答案
  • FastAPI安全异常处理:从401到422的奇妙冒险
  • 阿里云 RDS mysql 5.7 怎么 添加白名单 并链接数据库
  • 《Brief Bioinform》: 鼠脑单细胞与Stereo-seq数据整合算法评估
  • 基于Springboot的宠物领养系统
  • AI API、AI 聊天助手,两大服务助力应用智能化转型
  • Windows 下搭建 Zephyr 开发环境
  • 蓝桥杯单片机之通过实现同一个按键的短按与长按功能
  • 如何用 pnpm patch 给 element-plus 打补丁修复线上 bug(以 2.4.4 修复 PR#15197 为例)
  • PCB特种工艺应用扩展:厚铜、高频与软硬结合板
  • ClusterRole 和 ClusterRoleBinding 的关系及使用
  • C++ const 修饰符深入浅出详解
  • Python 数据类型转换、编码处理与文件操作实战指南
  • Readest(电子书阅读器) v0.9.53
  • USART 串口通信全解析:原理、结构与代码实战
  • Matlab | matlab中的图像处理详解
  • UOS无法安装deb软件包
  • VUE前端实现自动打包成压缩文件
  • 2025政务服务便民热线创新发展会议顺利召开,张晨博士受邀分享
  • 【PDF PicKiller】PDF批量删除固定位置图片工具,默认解密,可去一般图、背景图、水印图!
  • SpringAI Alibaba实战文生图
  • GIC700组件
  • 几种简单的排序算法(C语言)
  • RTOS学习之重难点
  • 有没有 MariaDB 5.5.56 对应 MySQL CONNECTION_CONTROL 插件