ACM技巧 - 多对象其一判空简写

简介: ACM技巧 - 多对象其一判空简写

背景

一般在二叉树比较常见这种情景,比如我想判断仅仅“左节点或右节点其中一个为空”就 dosomething...,两个对象还好,那如果是多叉树呢?岂不是要排列组合啦~

常见代码


if ((null == root.left && null != root.right) || (null != root.left && null == root.right)) {
    // dosomething...
}

优化代码


if (root.left == null && root.right == null) return; 
if (root.left == null || root.right == null) {
    // dosomething...
}
目录
相关文章
|
7月前
|
存储 人工智能 编译器
【重学C++】【引用】一文看懂引用的本质与右值引用存在的意义
【重学C++】【引用】一文看懂引用的本质与右值引用存在的意义
161 0
|
7月前
|
编译器 Linux C语言
C语言第三十弹---自定义类型:结构体(上)
C语言第三十弹---自定义类型:结构体(上)
|
存储 编译器 Linux
c++:缺省参数和引用的概念
c++:缺省参数和引用的概念
|
索引 Python 容器
继续打脸水货教程:关于可变对象与不可变对象
前阵子我们聊了下Python中有关函数参数传递以及变量赋值的一些内容:Python到底是引用传递还是值传递?网上大多数教程都讲错了
|
存储 XML JSON
【C语言】结构体——我就是秩序的创建者!(结构体数组、结构体指针、嵌套、匿名、字面量、伸缩型数组、链式结构)
【C语言】结构体——我就是秩序的创建者!(结构体数组、结构体指针、嵌套、匿名、字面量、伸缩型数组、链式结构)
|
存储 安全 编译器
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别(二)
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别
99 0
|
编译器 C语言 C++
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别(一)
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别
127 0
|
安全 C语言 C++
引用和指针傻傻分不清
🐰引用和指针的区别 🌸从现象上看 🌸从编译上看 🤔提示
(Java)数据结构之栈(Stack) ,附有三个栈相关OJ题目和对应做法(括号匹配,逆波兰表达式求值,出栈入栈次序匹配)
栈是一种特殊的线性表,它只能在固定的一端进行插入和删除操作,进行数据插入和删除的一端为栈顶,另一端为栈底。栈中的元素遵循后进先出(LIFO)(Last In First Out)的原则。
(Java)数据结构之栈(Stack) ,附有三个栈相关OJ题目和对应做法(括号匹配,逆波兰表达式求值,出栈入栈次序匹配)
|
存储 Java
Java面向对象(3.1)--方法的重载,可变个数的形参,值传递机制,递归
Java面向对象(3.1)--方法的重载,可变个数的形参,值传递机制,递归
128 0