| 1234567891011121314151617181920212223242526272829303132 | 
							- import (
 
- 	"strconv"
 
- )
 
- /**
 
-  * Definition for a binary tree node.
 
-  * type TreeNode struct {
 
-  *     Val int
 
-  *     Left *TreeNode
 
-  *     Right *TreeNode
 
-  * }
 
-  */
 
- func binaryTreePaths(root *TreeNode) (paths []string) {
 
- 	if root == nil {
 
- 		return
 
- 	}
 
- 	traversalPaths(root, "", &paths)
 
- 	return
 
- }
 
- func traversalPaths(node *TreeNode, path string, paths *[]string) {
 
- 	path += "->" + strconv.Itoa(node.Val)
 
- 	if node.Left != nil {
 
- 		traversalPaths(node.Left, path, paths)
 
- 	}
 
- 	if node.Right != nil {
 
- 		traversalPaths(node.Right, path, paths)
 
- 	}
 
- 	if node.Left == nil && node.Right == nil {
 
- 		*paths = append(*paths, path[2:])
 
- 	}
 
- }
 
 
  |