leetcode988
public class Solution
{
private Stack<string> ST = new Stack<string>();
private string SmallestStr = String.Empty;
private string[] Ary = new string[] { "a","b","c","d","e","f","g",
"h","i","j","k","l","m","n","o","p","q","r","s","t",
"u","v","w","x","y","z"};
private void SearchTree(TreeNode root)
{
if(root!=null)
{
var index = root.val;
var str = Ary[index];
ST.Push(str); if(root.left!=null)
{
SearchTree(root.left);
} if(root.right!=null)
{
SearchTree(root.right);
}
if(root.left==null && root.right==null)
{
//find a leaf node
var a1 = ST.ToArray();
StringBuilder sb1 = new StringBuilder();
for (int i = ; i < a1.Length;i++)
{
sb1.Append(a1[i]);
}
if(string.IsNullOrEmpty(SmallestStr) ||
string.Compare(SmallestStr, sb1.ToString()) >
)
{
SmallestStr = sb1.ToString();
}
}
ST.Pop();
}
} public string SmallestFromLeaf(TreeNode root)
{
SearchTree(root);
return SmallestStr;
}
}
leetcode988的更多相关文章
- [Swift]LeetCode988. 从叶结点开始的最小字符串 | Smallest String Starting From Leaf
Given the root of a binary tree, each node has a value from 0 to 25 representing the letters 'a' to ...
随机推荐
- 分布式消息队列RocketMQ--事务消息--解决分布式事务
说到分布式事务,就会谈到那个经典的”账号转账”问题:2个账号,分布处于2个不同的DB,或者说2个不同的子系统里面,A要扣钱,B要加钱,如何保证原子性? 一般的思路都是通过消息中间件来实现“最终一致性” ...
- ribbon的注解使用报错--No instances available for [IP]
使用RestTemplate类调用其他系统的url的时候,加上ribbon的注解@LoadBalanced上这个注解之后访问,就报错了. 报错如下: 因为这里你不能直接访问地址,需要把地址改成你所调用 ...
- whith ~ as 用法
个人理解 with self.client.get("/", catch_response=True) as response: 其实就是 response = self.clie ...
- python:逻辑运算与编码
一. 1.pycharm的使用 2.in not in 的使用 in not in 为了查找数据中是否存在需要查找的数据, in如果存在返回True,不存在返回False (not i ...
- android-sdk和api版本
Platform Version API Level VERSION_CODE Notes Android 8.1 27 O_MR1 平台亮点Android 8.0 26 O 平台亮点An ...
- sqlserver创建数据库
--指向当前要使用的master数据库,向master数据库中注册创建信息 use master go --创建数据库 create database StudentManageDB on prima ...
- ODBC数据源管理器-》系统DSN-》没有....Microsoft Access Driver(*mdb,*,accdb)
问题如标题: 解决方法:打开目录:“C:\Windows\SysWOW64”,双击该目录下的“odbcad32.exe”文件,就进去ODBC数据源管理界面了,现在这个界面中就有access的驱动了!
- (转)C# BackgroundWorker组件的原理分析
原文地址:http://www.cnblogs.com/chaosimple/archive/2012/11/30/2796069.html 主要属性: 1.CancellationPending 获 ...
- Chapter3:Qt5布局管理
3.1分割窗口QSplitter类 QSplitter *splitterMain = new QSplitter(Qt::Horizontal,0); QTextEdit *textLeft = n ...
- cocos源码分析--LayerColor的绘制过程
1开始,先创建一个LayerColor Scene *scene=Scene::create(); director->runWithScene(scene); //目标 auto layer ...