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...
}
目录
相关文章
|
6月前
|
存储 编译器 C语言
初谈C++:引用-1
初谈C++:引用
66 0
|
6月前
|
存储 安全 编译器
初谈C++:引用-2
初谈C++:引用
58 0
|
2月前
|
C++
C++(十七)仿函数
### Functor 仿函数简介 Functor(仿函数)是一种通过在类中实现 `operator()` 使其行为像函数的对象。这种方式可以让类拥有更多可定制的功能,同时保持函数般的简洁调用方式。下面展示了如何定义和使用一个计算幂运算的仿函数类,并通过示例说明了其在 `std::sort` 中的优势与灵活性。
|
6月前
|
存储 数据处理 C++
C/C++ 数据结构设计与应用(三):运算符重载的策略与实践 (Operator Overloading Strategies and Practices)
C/C++ 数据结构设计与应用(三):运算符重载的策略与实践 (Operator Overloading Strategies and Practices)
49 0
|
存储 安全 编译器
【Effective C++详细总结】第二章 构造/析构/赋值运算
【Effective C++详细总结】第二章 构造/析构/赋值运算
110 0
|
JavaScript 前端开发
|
JavaScript 前端开发
|
存储 安全 编译器
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别(二)
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别
93 0
|
编译器 C语言 C++
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别(一)
【是C++,不是C艹】 引用的概念 | 引用的使用 | 引用与指针的区别
121 0
|
安全 C语言 C++
引用和指针傻傻分不清
🐰引用和指针的区别 🌸从现象上看 🌸从编译上看 🤔提示