最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java二叉樹路徑和代碼示例

 更新時間:2017年12月14日 15:33:57   作者:我要吃掉太陽啊  
這篇文章主要介紹了Java二叉樹路徑和代碼示例,具有一定借鑒價值,需要的朋友可以參考下。

給定一個二叉樹,找出所有路徑中各節(jié)點相加總和等于給定 目標值 的路徑。

一個有效的路徑,指的是從根節(jié)點到葉節(jié)點的路徑。

樣例

給定一個二叉樹,和 目標值 = 5:

  1
 / \
 2 4
 / \
 2 3

返回:

[
 [1, 2, 2],
 [1, 4]
]

代碼如下:

/**
 * Definition of TreeNode:
 * public class TreeNode {
 *  public int val;
 *  public TreeNode left, right;
 *  public TreeNode(int val) {
 *   this.val = val;
 *   this.left = this.right = null;
 *  }
 * }
 */
public class Solution {
	/**
  * @param root the root of binary tree
  * @param target an integer
  * @return all valid paths
  */
	public List<List<Integer>> binaryTreePathSum(TreeNode root, int target) {
		// Write your code here
		return dfs(root,new ArrayList<Integer>(),0,new ArrayList<List<Integer>>(),target);
	}
	public List<List<Integer>> dfs(TreeNode root,List<Integer> node, int sum, List<List<Integer>> paths,int target)
	 {
		if(root==null)
		  {
			return new ArrayList<List<Integer>>();
		}
		List<List<Integer>> path=new ArrayList<List<Integer>>();
		if(root.left!=null)
		  {
			List<Integer> nodes=new ArrayList<Integer>();
			if(node!=null)
			  {
				nodes.addAll(node);
			}
			nodes.add(root.val);
			List<List<Integer>> temp=dfs(root.left,nodes,sum+root.val,paths,target);
			if(temp!=null)
			   {
				path.addAll(temp);
			}
		}
		if(root.right!=null)
		  {
			List<Integer> nodes=new ArrayList<Integer>();
			if(node!=null)
			  {
				nodes.addAll(node);
			}
			nodes.add(root.val);
			List<List<Integer>> temp=dfs(root.right,nodes,sum+root.val,paths,target);
			if(temp!=null)
			   {
				path.addAll(temp);
			}
		}
		if(root.left==null&&root.right==null)
		  {
			List<Integer> nodes=new ArrayList<Integer>();
			if(node!=null)
			  {
				nodes.addAll(node);
			}
			nodes.add(root.val);
			if(sum+root.val==target)
			   {
				path.add(nodes);
			} else{
				path=new ArrayList<List<Integer>>();
			}
		}
		return path;
	}
}

referance

java編程求二叉樹最大路徑問題代碼分析

java中繼承測試代碼分析

總結

以上就是本文關于Java二叉樹路徑和代碼示例的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關文章

  • 解決scala.collection.mutable.Map寫入的問題

    解決scala.collection.mutable.Map寫入的問題

    這篇文章主要介紹了解決scala.collection.mutable.Map寫入的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • IDEA連接mysql保姆級教學教程

    IDEA連接mysql保姆級教學教程

    學習使用IDEA的時候,需要連接Database,下面這篇文章主要給大家介紹了關于IDEA連接mysql的保姆級教學教程,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-03-03
  • Spring jpa和mybatis整合遇到的問題解析

    Spring jpa和mybatis整合遇到的問題解析

    有朋友說jpa相比mybatis太難用,多表聯(lián)合的查詢寫起來也比較費勁,所以便加入了mybatis的支持,在配置jpa時遇到各種問題,需要修改相關配置文件,下面小編給大家分享下修改配置文件的思路,感興趣的朋友參考下
    2016-10-10
  • java  設計模式之單例模式

    java 設計模式之單例模式

    這篇文章主要介紹了java 設計模式之單例模式的相關資料,需要的朋友可以參考下
    2017-02-02
  • 解決SpringBoot中使用@Async注解失效的問題

    解決SpringBoot中使用@Async注解失效的問題

    這篇文章主要介紹了解決SpringBoot中使用@Async注解失效的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • java調用文心一言API的方法實現(xiàn)過程

    java調用文心一言API的方法實現(xiàn)過程

    Java是一種廣泛使用的編程語言,用于開發(fā)各種應用程序,下面這篇文章主要給大家介紹了關于java調用文心一言API的方法實現(xiàn),文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • Java、JavaScript、Oracle、MySQL中實現(xiàn)的MD5加密算法分享

    Java、JavaScript、Oracle、MySQL中實現(xiàn)的MD5加密算法分享

    這篇文章主要介紹了Java、JavaScript、Oracle、MySQL中實現(xiàn)的MD5加密算法分享,需要的朋友可以參考下
    2014-09-09
  • idea快速搭建springboot項目的操作方法

    idea快速搭建springboot項目的操作方法

    下面小編就為大家分享一篇idea快速搭建springboot項目的操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Caused?by:?java.lang.NumberFormatException:?For?input?string:?“port“(問題解決)

    Caused?by:?java.lang.NumberFormatException:?For?input?s

    這篇文章主要介紹了Caused?by:?java.lang.NumberFormatException:?For?input?string:?“port“,本文給大家分享完美解決方法,需要的朋友可以參考下
    2023-01-01
  • Ubuntu 安裝 JDK8 的兩種方法(總結)

    Ubuntu 安裝 JDK8 的兩種方法(總結)

    下面小編就為大家?guī)硪黄猆buntu 安裝 JDK8 的兩種方法(總結)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論

临高县| 织金县| 安徽省| 崇州市| 政和县| 诏安县| 礼泉县| 柯坪县| 盈江县| 乐清市| 隆尧县| 庄河市| 柳河县| 宜黄县| 务川| 清河县| 郎溪县| 丹棱县| 双牌县| 潜江市| 澳门| 上虞市| 芒康县| 盱眙县| 门头沟区| 忻城县| 天水市| 克什克腾旗| 德庆县| 江城| 广西| 阳西县| 富平县| 江华| 厦门市| 清水河县| 锦屏县| 渝中区| 奈曼旗| 千阳县| 思茅市|