257. 二叉树的所有路径 golang

257. 二叉树的所有路径

给定一个二叉树,返回所有从根节点到叶子节点的路径。

说明: 叶子节点是指没有子节点的节点。

示例:

输入:

   1/   \
2     3\5

输出: [“1->2->5”, “1->3”]

解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3

Code


func binaryTreePaths(root *TreeNode) []string {if root == nil {return nil}str := strconv.Itoa(root.Val)var res []stringif root.Left != nil{strs := binaryTreePaths(root.Left)for _, v := range strs {res = append(res, str+"->"+v)}}if root.Right != nil{strs := binaryTreePaths(root.Right)for _, v := range strs {res=append(res, str+"->"+v)}}if len(res) == 0{return []string{str}}return res
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/382117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dp题目分类

动态规划一般可分为线性动规,区域动规,树形动规,背包动规四类。举例:线性动规:拦截导弹,合唱队形,挖地雷,建学校,剑客决斗等;区域动规:石子合并&a…

349. 两个数组的交集 golang

349. 两个数组的交集 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 [1,2,2,1], nums2 [2,2] 输出: [2] 示例 2: 输入: nums1 [4,9,5], nums2 [9,4,9,8,4] 输出: [9,4] 说明: 输出结果中的每个元素一定是唯一的。 我们可以不考虑输出结…

poj 1018 Communication System

首先做这个题是极其难受的,第一次去做dp的题,万事开头难,虽然以前也接触过dp,但是都极力躲避着用其他算法解决,现在专门练这部分,倒觉得,你拍什么,什么就会比想象中难很多&#xff0…

大娱乐家

大娱乐家屏幕上跳动的光标,不知道有多久我没有这样安静一会了,也不知多久没在记录那些生活中意味深长的事了,翻转脑海,却发现是一团糟,总有理还乱的错觉,我不知道自大学以来是我实在没经历那种一下子就让人…

120. 三角形最小路径和 golang

120. 三角形最小路径和 给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。 例如,给定三角形: [ [2], [3,4], [6,5,7], [4,1,8,3] ] 自顶向下的最小路径和为 11(即,2 3 5 1 11&…

HDU中一些DP的题目分类

DP是难点,供自已以后系统学习。 1.Robberies 连接 :http://acm.hdu.edu.cn/showproblem.php?pid2955 背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多少钱 最脑残的是把总的概率以为是抢N家银行的概率之和… 把状…

背包九讲

背包九讲--各种背包问题阅读:56462012-02-15 15:34标签:背包P01: 01背包问题题目有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大…

golang json判断类型

json怎么判断类型 if q.Number 0 {fmt.Println("q.Number is string!Pass" )}if q.Number 0 {fmt.Println("q.Number is not string!Wrong" )}看上去很粗暴但是很实用,并没有查到满意的方法,待补充。 package main import ("…

11. 盛最多水的容器 golang

11. 盛最多水的容器 (一道比较特殊的题) 之所以说特殊是因为这个题用动态规划反而比暴力破解法还复杂。 这种容器的题,就是前后指针方向。尽量别考虑别的思路。 11. 盛最多水的容器 给你 n 个非负整数 a1,a2,…&#…

C++中几种将整数转换成二进制输出的方法

看《编程之美》第二节的时候,它是定义的一个整型,然后取位。但是他的那个或运算符号好像写错了,写成了异或符号“^”,应该是“|”。我就突然对二进制的输出感兴趣了。想知道怎样输出二进制。我们知道C输出十六进制是cout〈〈hex〈…

快速pow和sqrt的小技巧 hdu4282

http://acm.hdu.edu.cn/showproblem.php?pid4282 今年网络赛。。天津赛区。。有道题。。是这样的。。。X^Z Y^Z XYZ K 给出K ,求XYZ,我思路很明确。。。枚举其二,然后二分其一,但是始终TLE。。。。晚上回去之后,看…

466. 统计重复个数 golang[转]

转载(mark) https://blog.by24.cn/archives/leetcode-count-the-repetitions.html func getMaxRepetitions(s1 string, n1 int, s2 string, n2 int) int {len1, len2 : len(s1), len(s2)index1, index2 : 0, 0 // 注意此处直接使用 Ra Rb 的下标&#…

pow(x,y)函数

实现浮点类型的幂运算,函数原型为: double pow(double x, int n) 在求解这个问题的时候是一个很挣扎的过程,因为它不是报错而是一直提示你超出时间,那么必须一次次的考虑怎样降低时间复杂度。 首先最直接的思路是下面这样的,就跟直…

LeetCode 303,560,1248 (前缀求和 )

303. 区域和检索 - 数组不可变 给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。 示例: 给定 nums [-2, 0, 3, -5, 2, -1],求和函数为 sumRange() sumRange(0, 2) -> 1 sumRange…

ZOJ 2060----Fibonacci Again

没什么好说的&#xff0c;就是要求斐波那契&#xff0c;问该数是否能够被三整除&#xff0c;写出了答案的个位便可发现规律。code&#xff1a;#include <iostream>using namespace std;int main() { int n; while (cin>>n) { if ((n - 2) % 4!0) cout<…

分布式是写出来的(一)

分布式对象存储笔记 实现一个单机版本的对象存储 package mainimport ("io""log""net/http""os""strings" )func Handler(w http.ResponseWriter, r *http.Request) {m : r.Methodif m http.MethodPut {put(w, r)return}…

分布式是写出来的(二)

从单机存储进化为接口和存储的分离 概述 接口服务层对外提供REST服务&#xff0c;数据服务层提供数据存储功能。两者之间通过消息队列进行通信&#xff0c;数据服务层的所有数据服务注册dataServer Exchange&#xff0c; 以便client给接口服务层发消息后&#xff0c;接口服务…

ZOJ 1295——Reverse Text

在没学STL之前&#xff0c;可能做这道题需要开数组&#xff0c;在出现空格的地方外加判断&#xff0c;但是学完string&#xff0c;一条reverse语句便将输入逆转&#xff0c;c语音可能需要2-30行&#xff0c;可见c的优化。注意&#xff1a;输入有空格&#xff0c;要用getline(ci…

分布式是写出来的(三)

添加元数据服务 元数据服务就是对元数据提供存取功能的服务。元数据就是系统定义的基本信息&#xff0c;比如一张相片的名字&#xff0c;版本&#xff0c;拍摄时间&#xff0c;散列值等。客户端和接口服务之间根据对象的名字来引用一个对象&#xff0c;一个对象可以有多个版本…

ZOj 2104——Let the Balloon Rise

老师在上课的时候讲过这道题&#xff0c;不过当时做这道题时还是纠结了许久&#xff0c;那时stl不熟&#xff0c;老是想着用数组&#xff0c;去重很麻烦&#xff0c;学了STL后&#xff0c;用map就简单多了。code &#xff1a;#include <iostream>#include <string>…