100. Same Tree同样的树
[抄题]:
Given two binary trees, write a function to check if they are the same or not.
Two binary trees are considered the same if they are structurally identical and the nodes have the same value.
Example 1:
Input: 1 1/ \ / \2 3 2 3[1,2,3], [1,2,3]Output: true
Example 2:
Input: 1 1/ \2 2[1,2], [1,null,2]Output: false
Example 3:
Input: 1 1/ \ / \2 1 1 2[1,2,1], [1,1,2]Output: false
[暴力解法]:
时间分析:
空间分析:
[思维问题]:
基础弱到没有recursion的概念
[一句话思路]:
recursion就是嵌套
[输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入):
[画图]:
[一刷]:
- 从正反两方面想,把所有情况都想到:p,q val相不相等,p,q不空、一个空、2个空
[二刷]:
[三刷]:
[四刷]:
[五刷]:
[五分钟肉眼debug的结果]:
[总结]:
要有默认情况
[复杂度]:Time complexity: O(n) Space complexity: O(n)
所有的点走一遍,时间复杂度就是n
[英文数据结构或算法,为什么不用别的数据结构或算法]:
[关键模板化代码]:
[其他解法]:
非递归,用stack,很麻烦 属于没事找事
[Follow Up]:
[LC给出的题目变变变]:
[代码风格] :
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val = x; }* }*/ class Solution {public boolean isSameTree(TreeNode p, TreeNode q) {//both are nullif (p == null && q == null) return true; //just one nullif (p == null || q == null) return false;//p.val == q.val, recursionif (p.val == q.val) return (isSameTree(p.left, q.left)) && (isSameTree(p.right, q.right));//p.val != q.valreturn false;//default } }
View Code
转载于:https://www.cnblogs.com/immiao0319/p/8543085.html
100. Same Tree同样的树相关推荐
- 100. Same Tree 相同的树
给定两个二叉树,编写一个函数来检验它们是否相同. 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的. 示例 1: 输入: 1 1/ \ / \2 3 2 3[1,2,3], [1,2, ...
- Linux DTS (Device Tree Source)设备树源码
Linux DTS 设备树源码 1. 简介 1.1 引入DTS的原因 1.2 文件格式 2. DTS语法 2.1 .dtsi头文件 2.2 设备节点 2.2.1 设备树中节点命名格式 2.2.2 设备 ...
- C++Persistent segment tree持久段树的实现算法(附完整源码)
C++Persistent segment tree持久段树的实现算法 C++Persistent segment tree持久段树的实现算法完整源码(定义,实现,main函数测试) C++Persi ...
- C++Fenwick tree芬威克树的实现算法(附完整源码)
C++Fenwick tree芬威克树的实现算法 C++Fenwick tree芬威克树的实现算法完整源码(定义,实现,main函数测试) C++Fenwick tree芬威克树的实现算法完整源码(定 ...
- Android 驱动(12)---Linux DTS(Device Tree Source)设备树详解
Linux DTS(Device Tree Source)设备树详解 Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇) Linux DTS(Device Tr ...
- LeetCode 100. Same Tree
LeetCode 100. Same Tree Solution1: 这种弱智题提交这么多次... /*** Definition for a binary tree node.* struct Tr ...
- 一首好听的英文歌lemon tree(柠檬树)的中文歌词
一首好听的英文歌lemon tree(柠檬树)的中文歌词 lemon tree的中文 i'm sitting here in a boring room.我坐在这--一间空屋子里 it's just ...
- 哈夫曼树 (100分)哈夫曼树
4-1 哈夫曼树 (100分)哈夫曼树 第一行输入一个数n,表示叶结点的个数. 需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即weight,题目需要输出哈夫曼树的带权路径长度(W ...
- 高通平台msm8953 Linux DTS(Device Tree Source)设备树详解之二(DTS设备树匹配过程)
本系列导航: 高通平台8953 Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇) 高通平台8953 Linux DTS(Device Tree Source ...
最新文章
- PopupWindow响应返回键的问题
- 光伏产业链遭致命伤:补贴下调或结束暴利
- kafka环境安装及简单使用(单机版)
- php padright,[扩展推荐] PHP 字符串操作类 Twine
- opencv立方体的画法_最详细的立方体透视变化及画法讲解
- 软考信息系统项目管理师2021_信息化与信息系统_项目管理阶段_方法_网络协议---软考高级之信息系统项目管理师003
- python numpy array转置_python-Numpy Performance-向量及其转置的外积
- 二元置信椭圆r语言_医学统计与R语言:Logistic Distribution
- ibatis.net:尽可能的使用匿名类型替换 Hashtable
- MPP文件怎么打开 五种方法最合适
- word2vec:基于层级 softmax 和负采样的 Skip-Gram
- 计算机日历算法流程图,计算机日历
- WASC Threat Classification 安全威胁分类
- 2000-2019年世界人口数据集内附下载地址和链接
- 神奇的数字之回文数c语言,数学文化之神奇的数
- 新概念二册 lesson 3 一般过去式
- Unity 3D 摄像机的类型
- OPPO K7X手机刷root 获取magisk 强解锁BL coloros11教程
- 达摩院一年香,阿里巴巴CTO张建锋公布了哪些最新成果?
- 文件上传漏洞实验-通过截取http请求绕过前端javascript验证进行文件上传
热门文章
- 关于为使用ArrayAdapter创建ListView时,使用TextView添加子项的问题
- lstm 根据前文预测词_干货 | Pytorch实现基于LSTM的单词检测器
- c语言指针指向字符串单个,C语言 有没有可能调用一个指向字符串的函数指针?...
- 基于函数计算的 BFF 架构
- 深入理解Kubelet核心执行框架
- android python opencv_使用Python和OpenCV自动化Android游戏
- mysql 迭代更新_MySQL、MongoDB、Redis 数据库之间的区别与使用(本章迭代更新)
- sublime text3安装python插件和flake8_让你的代码符合PEP8标准——sublime text 2 安装及使用 Python Flake8 Lint 插件...
- svn版本库浏览器_svn:版本库xxx不存在||svn:No such revision xxx的问题
- 3 域名正则_一个正则表达式怎么会引起线上CPU狂飙?