988. 从叶结点开始的最小字符串
Posted Debroon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了988. 从叶结点开始的最小字符串相关的知识,希望对你有一定的参考价值。
988. 从叶结点开始的最小字符串
题目
传送门:https://leetcode.cn/problems/smallest-string-starting-from-leaf/
算法设计:深度优先搜索
在遍历二叉树的基础上,获取最小字典序。
class Solution
string ans = "~"; // 最大的ASCII码
public:
void dfs(TreeNode* root, string s)
if (!root) return;
if (!root->left && !root->right) // 叶子节点
ans = min(ans, char(root->val+'a')+s); // +a:0->a、倒序保存:root->val + s、最小字典序:字典序以叶子节点为主
dfs(root->left, char(root->val+'a')+s);
dfs(root->right, char(root->val+'a')+s);
string smallestFromLeaf(TreeNode* root)
dfs(root,"");
return ans;
;
以上是关于988. 从叶结点开始的最小字符串的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 988:回溯和深度优先搜索(DFS)的区别