day17 二叉树的所有路径

void traversal(TreeNode* cur,

vector<int>& path,

vector<string>& result)

{

path.push_back(cur->val); // 中,中为什么写在这里,因为最后一个节点也要加入到path中

// 这才到了叶子节点

if (cur->left == NULL && cur->right == NULL) {

string sPath;

加入除最后一个元素外的数据

for (int i = 0; i < path.size() - 1; i++) {

sPath += to_string(path[i]);

sPath += "->";

}

加入最后一个元素

sPath += to_string(path[path.size() - 1]);

result.push_back(sPath);

return;

}

if (cur->left) { // 左

traversal(cur->left, path, result);

path.pop_back(); // 回溯

}

if (cur->right) { // 右

traversal(cur->right, path, result);

path.pop_back(); // 回溯

}

}

vector<string> binaryTreePaths(TreeNode* root) {

vector<string> result;

vector<int> path;

if (root == NULL) return result;

traversal(root, path, result);

return result;

}

相关推荐
Dizzy.5173 小时前
数据结构(查找)
数据结构·学习·算法
分别努力读书6 小时前
acm培训 part 7
算法·图论
武乐乐~6 小时前
欢乐力扣:赎金信
算法·leetcode·职场和发展
'Debug6 小时前
算法从0到100之【专题一】- 双指针第一练(数组划分、数组分块)
算法
Fansv5877 小时前
深度学习-2.机械学习基础
人工智能·经验分享·python·深度学习·算法·机器学习
yatingliu20198 小时前
代码随想录算法训练营第六天| 242.有效的字母异位词 、349. 两个数组的交集、202. 快乐数 、1. 两数之和
c++·算法
uhakadotcom9 小时前
Google DeepMind最近发布了SigLIP 2
人工智能·算法·架构
三年呀9 小时前
计算机视觉之图像处理-----SIFT、SURF、FAST、ORB 特征提取算法深度解析
图像处理·python·深度学习·算法·目标检测·机器学习·计算机视觉
淡黄的Cherry9 小时前
istio实现灰度发布,A/B发布, Kiali网格可视化(二)
java·算法·istio
Onlooker1299 小时前
LC-单词搜索、分割回文串、N皇后、搜索插入位置、搜索二维矩阵
算法·leetcode