problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
lintcode::flatten::Solution类 参考

#include <lintcode.h>

静态 Public 成员函数

static void flatten (TreeNode *root)
 
static TreeNodevlr (TreeNode *)
 

详细描述

在文件 lintcode.h101 行定义.

成员函数说明

◆ flatten()

void lintcode::flatten::Solution::flatten ( TreeNode root)
static
参数
roota TreeNode, the root of the binary tree
返回
: nothing

在文件 lintcode.cpp181 行定义.

181 {
182 if(root == nullptr) {
183 return;
184 }
185 root = vlr(root);
186 }
vector< int > root
Definition: acwing408.cpp:349
static TreeNode * vlr(TreeNode *)
Definition: lintcode.cpp:188

引用了 acwing::acwing836_408::root , 以及 vlr().

◆ vlr()

TreeNode * lintcode::flatten::Solution::vlr ( TreeNode node)
static

在文件 lintcode.cpp188 行定义.

188 {
189 if(node->left != nullptr) {
190 if(node->right != nullptr) {
191 auto *tmp = node->right;
192 node->right = vlr(node->left);
193 auto *current = node->right;
194 while(current->right != nullptr) {
195 current = current->right;
196 }
197 current->right = vlr(tmp);
198 node->left = nullptr;
199 } else {
200 node->right = vlr(node->left);
201 node->left = nullptr;
202 }
203 } else {
204 if(node->right != nullptr) {
205 node->right = vlr(node->right);
206 }
207 }
208 return node;
209 }

引用了 lintcode::TreeNode::left, lintcode::TreeNode::right , 以及 vlr().

被这些函数引用 flatten() , 以及 vlr().


该类的文档由以下文件生成: