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

1457. 二叉树中的伪回文路径

  • dfs 查询每条路径,空节点返回,
  • 节点入路径
  • 该节点左右均为空则进入回文判断逻辑
    • 回文的判断:出现次数为奇数次的数的个数<=1
  • 加上左右节点所在路径伪回文路径数
  • 该节点查询完毕,将其从路径中清除,回溯到上一节点
    • 引用传参,避免了多次参数的复制,同时通过回溯状态参与上一分支的查询
  • 返回伪回文路径数
class Solution {
public:int dfs(vector<int>& micpaths, TreeNode* root){if(!root)return 0;micpaths[root->val]++;int ret = 0;if(!root->left && !root->right){ret = check_palindromic(micpaths);}int l = dfs(micpaths, root->left);int r = dfs(micpaths, root->right);micpaths[root->val]--;return ret + l + r;}bool check_palindromic(const vector<int>& count){int odd = 0;for(auto & a : count){if(a & 1) odd++;}return odd <= 1;}int pseudoPalindromicPaths (TreeNode* root) {vector<int> micpaths(10);return dfs(micpaths, root);}
};

相关文章:

  • Java基础之泛型
  • 【腾讯云云上实验室】用向量数据库在金融信用数据库分析中的实战运用
  • 03_MySQL基本SQL语句讲解
  • Spark-06:Spark 共享变量
  • 【开源】基于Vue和SpringBoot的个人健康管理系统
  • 电脑投屏到电视的软件,Mac,Linux,Win均可使用
  • 解读向量数据库
  • C++学习之路(六)C++ 实现简单的工具箱系统命令行应用 - 示例代码拆分讲解
  • KVM虚拟机的NAT网络模式原理及过程展示
  • Android frameworks 开发总结之九(Settings)
  • MySQL与Redis如何保证数据的一致性
  • rust tokio select!宏详解
  • python爬虫进阶篇(异步)
  • 第十七章 处理空字符串和 Null 值 - XMLIGNORENULL、XMLNIL 和 XMLUSEMPTYELEMENT 的详细信息
  • C#,《小白学程序》第二十一课:大数的减法(BigInteger Subtract)
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • 【技术性】Search知识
  • 5、React组件事件详解
  • AHK 中 = 和 == 等比较运算符的用法
  • canvas绘制圆角头像
  • Java面向对象及其三大特征
  • JS实现简单的MVC模式开发小游戏
  • JWT究竟是什么呢?
  • Objective-C 中关联引用的概念
  • 使用parted解决大于2T的磁盘分区
  • Spring Batch JSON 支持
  • ###C语言程序设计-----C语言学习(6)#
  • #1015 : KMP算法
  • #define 用法
  • #QT(串口助手-界面)
  • #Z0458. 树的中心2
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (附源码)计算机毕业设计大学生兼职系统
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (七)c52学习之旅-中断
  • (学习日记)2024.01.09
  • (转)用.Net的File控件上传文件的解决方案
  • (转载)OpenStack Hacker养成指南
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET 命令行参数包含应用程序路径吗?
  • .NET/MSBuild 中的发布路径在哪里呢?如何在扩展编译的时候修改发布路径中的文件呢?
  • .net用HTML开发怎么调试,如何使用ASP.NET MVC在调试中查看控制器生成的html?
  • @media screen 针对不同移动设备
  • @modelattribute注解用postman测试怎么传参_接口测试之问题挖掘
  • @Transactional 竟也能解决分布式事务?
  • [AIGC] Redis基础命令集详细介绍
  • [AutoSar]BSW_Memory_Stack_004 创建一个简单NV block并调试
  • [BJDCTF 2020]easy_md5
  • [bug总结]: Feign调用GET请求找不到请求体实体类
  • [BZOJ 1032][JSOI2007]祖码Zuma(区间Dp)
  • [bzoj 3534][Sdoi2014] 重建