leetcode 222. 完全二叉樹的節點個數(dfs)

給出一個完全二叉樹,求出該樹的節點個數。說明:完全二叉樹的定義如下:在完全二叉樹中,除了最底層節點可能沒填滿外,其余每層節點數都達到最大值,并且最下面一層的節點都集中在該層最左邊的若干位置。若最底層為第 h 層,則該層包含 1~ 2h 個節點。示例:輸入: 1/ \2   3/ \  /
4  5 6輸出: 6

代碼

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode(int x) { val = x; }* }*/
class Solution {public int countNodes(TreeNode root) {return root==null?0:1+countNodes(root.left)+countNodes(root.right);}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392612.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392612.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392612.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

css 計算屬性的應用_如何使用一點CSS Grid魔術設計計算器應用

css 計算屬性的應用by Deepika Gunda由Deepika Gunda 如何使用一點CSS Grid魔術設計計算器應用 (How to use a little CSS Grid magic to design a calculator app) This article is a quick intro to CSS Grid. We will be making a calculator using it.本文是CSS Grid的快速…

vc調試大全

一、調試基礎 調試快捷鍵 F5: 開始調試 ShiftF5: 停止調試 F10: 調試到下一句,這里是單步跟蹤 F11: 調試到下一句,跟進函數內部 ShiftF11: 從當前函數中跳出 CtrlF10: 調試到光標所在位置 F9: …

Google-Guava-EventBus源碼解讀

Guava是Google開源的一個Java基礎類庫,它在Google內部被廣泛使用。Guava提供了很多功能模塊比如:集合、并發庫、緩存等,EventBus是其中的一個module,本篇結合EventBus源碼來談談它的設計與實現。 概要 首先,我們先來預…

leetcode 1370. 上升下降字符串

給你一個字符串 s ,請你根據下面的算法重新構造字符串: 從 s 中選出 最小 的字符,將它 接在 結果字符串的后面。 從 s 剩余字符中選出 最小 的字符,且該字符比上一個添加的字符大,將它 接在 結果字符串后面。 重復步驟…

mysql 設置事物自動提交_mysql事務自動提交的問題

1:mysql的aut0commit配置默認是開啟的,也就是沒執行一條sql都會提交一次,就算顯示的開啟事務也會導致多條SQL不在一個事務中,如果需要相關的SQL在同一個事務中執行,那么必須將autocommit設置為OFF,再顯式開…

rest laravel_如何通過測試驅動開發來構建Laravel REST API

rest laravelby Kofo Okesola由Kofo Okesola 如何通過測試驅動開發來構建Laravel REST API (How to build a Laravel REST API with Test-Driven Development) There is a famous quote by James Grenning, one of the pioneers in TDD and Agile development methodologies:T…

python之numpy

numpy是一個多維的數組對象,類似python的列表,但是數組對象的每個元素之間由空格隔開。 一、數組的創建 1.通過numpy的array(參數),參數可以是列表、元組、數組、生成器等 由arr2和arr3看出,對于多維數組來說,如果最里…

git 上傳

轉載于:https://www.cnblogs.com/benbentu/p/6543154.html

Liferay 部署war包時候的deployDirectory 細節分析

引入: 在上文中,我們從宏觀上講解了Liferay部署war包的動作是如何觸發監聽器并且完成部署過程的,但是其中最核心的一塊deployDirectory我們沒講,它的作用是當有了臨時目錄并且已經把war包的內容展開到該目錄之后,是如何…

leetcode 164. 最大間距(桶排序)

給定一個無序的數組,找出數組在排序之后,相鄰元素之間最大的差值。 如果數組元素個數小于 2,則返回 0。 示例 1: 輸入: [3,6,9,1] 輸出: 3 解釋: 排序后的數組是 [1,3,6,9], 其中相鄰元素 (3,6) 和 (6,9) 之間都存在最大差值 3。 示例 2: …

批處理定時mysql備份數據庫_定時備份mysql數據庫的批處理

定時備份mysql數據庫的批處理代碼,保存為backup_mysql.bat,運行即可。復制代碼 代碼如下:echo offset txt1%date:~0,4%::當前年set txt2%date:~5,2%::當前月set txt3%date:~8,2%::當前日set txt4%time:~0,2%::當前小時set txt5%time:~3,2%::當前分鐘set …

算法訓練營 重編碼_您在編碼訓練營期間可能面臨的最大挑戰

算法訓練營 重編碼by Joanna Gaudyn喬安娜高登(Joanna Gaudyn) 您在編碼訓練營期間可能面臨的最大挑戰 (The biggest struggles you might face during a coding bootcamp) You think that during a coding bootcamp nothing can be more challenging than learning programmi…

1449 砝碼稱重(思維)

題目鏈接:https://www.51nod.com/onlineJudge/submitDetail.html#!judgeId259281 題解:這題有一個技巧,畢竟是w^0,w^1,w^2....這樣,必然會想到w進制,而且就只能用一次。 那么就簡單了,把m拆成w進制&#xf…

leetcode 454. 四數相加 II(哈希表)

給定四個包含整數的數組列表 A , B , C , D ,計算有多少個元組 (i, j, k, l) ,使得 A[i] B[j] C[k] D[l] 0。 為了使問題簡單化,所有的 A, B, C, D 具有相同的長度 N,且 0 ≤ N ≤ 500 。所有整數的范圍在 -228 到 228 - 1 之間&#xf…

“換標”Intel的窮則思變

成語有云“窮則思變”,用這個詞來形容早先的Intel換標也最恰當不過。當然這里“窮”,不是說Intel很貧窮,而是說Intel在自己的產業到了盡頭。Intel推產品概念的水平是一流的,雖然某些概念事后被認為是錯誤的(如&#xf…

mysql開發中遇到的坑_mysql優化過程中遇見的坑(mysql優化問題特別注意)

單條查詢最后添加 LIMIT 1,停止全表掃描。對于char(4) 或者vachar(4),無論是中文還是英文都是存儲四個字符,注意是字符而不是字節。如果一個字段未int類型,此類型只有0、1兩個狀態,需要為此建立索引嗎?過度…

初級開發人員的缺點_在您作為初級開發人員的第一年獲得此建議

初級開發人員的缺點Are you a junior developer embarking on your software development career?您是從事軟件開發事業的初級開發人員嗎? Or a recent computer science graduate who has recently started a new job?還是最近剛開始從事新工作的計算機科學專業…

Spark日志分析

根據tomcat日志計算url訪問了情況,具體的url如下, 要求:區別統計GET和POST URL訪問量 結果為:訪問方式、URL、訪問量 輸入文件: 196.168.2.1 - - [03/Jul/2014:23:36:38 0800] "GET /course/detail/3.htm HTTP/1.…

進程、線程和協程的區別

首先,給出“進程、線程和協程”的特點: 進程:擁有自己獨立的堆和棧,既不共享堆,也不共享棧,進程由操作系統調度;線程:擁有自己獨立的棧和共享的堆,共享堆,不共…

leetcode 493. 翻轉對(分治算法)

給定一個數組 nums &#xff0c;如果 i < j 且 nums[i] > 2*nums[j] 我們就將 (i, j) 稱作一個重要翻轉對。 你需要返回給定數組中的重要翻轉對的數量。 示例 1: 輸入: [1,3,2,3,1] 輸出: 2 代碼 class Solution {public int reversePairs(int[] nums) {return getR…