[easy][BST-Tree]669.Trim a Binary Search Tree

原題:

Given a binary search tree and the lowest and highest boundaries as L and R, trim the tree so that all its elements lies in [L, R] (R >= L). You might need to change the root of the tree, so the result should return the new root of the trimmed binary search tree
Screen Shot 2017-11-05 at 4.49.41 PM.png
Screen Shot 2017-11-05 at 4.51.37 PM.png

所犯的錯誤:

開始21,28行沒有做賦值給root,導致出錯。root是作為對象傳入給函數的,如果不將返回值賦值給root,那么原來的Root等于沒有任何函數操作所帶來的改變。

Screen Shot 2017-11-05 at 4.53.16 PM.png

開始第18,22都沒有寫elif ,只是寫了if。由于root可能在上一個if語句中發生變化,導致符合下一個If的條件,又進入了下一個if,這樣就發生了錯誤。必須采用elif將他們互斥。

開始沒有寫28,21行,而在函數最后的return中這樣寫:return self.trimBST(root,L,R),導致程序進入無限循環而溢出棧。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 轉至元數據結尾創建: 董瀟偉,最新修改于: 十二月 23, 2016 轉至元數據起始第一章:isa和Class一....
    40c0490e5268閱讀 1,757評論 0 9
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,740評論 18 399
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,837評論 18 139
  • ¥開啟¥ 【iAPP實現進入界面執行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,497評論 0 17
  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經驗。 張土汪:刷leetcod...
    土汪閱讀 12,766評論 0 33