leetcode99. 恢復二叉搜索樹(優先隊列)

二叉搜索樹中的兩個節點被錯誤地交換。請在不改變其結構的情況下,恢復這棵樹。示例 1:輸入: [1,3,null,null,2]1/3\2輸出: [3,1,null,null,2]3/1\2

代碼

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {PriorityQueue<Integer> treeNodes=new PriorityQueue<>();public void recoverTree(TreeNode root) {mid(root);midd(root);}public void midd(TreeNode root) {//中序遍歷,將優先隊列中生成正確的順序裝回樹上if(root==null) return;midd(root.left);root.val=treeNodes.poll();midd(root.right);}public void mid(TreeNode root) {//中序遍歷,并在優先隊列中生成正確的順序if(root==null) return;mid(root.left);treeNodes.add(root.val);mid(root.right);}
}

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

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

相關文章

Android零基礎入門第83節:Activity間數據傳遞方法匯總

2019獨角獸企業重金招聘Python工程師標準>>> 在Activity間傳遞的數據一般比較簡單&#xff0c;但是有時候實際開發中也會傳一些比較復雜的數據&#xff0c;本節一起來學習更多Activity間數據的傳遞。 一、常用數據類型 在前面幾節我們只學習了一些常用類型的數據傳遞…

mysql gz 安裝_Linux下安裝mysql 5.7.17.tar.gz的教程詳解

1.創建MySQL組和mysql用戶groupadd mysqluseradd -r -g mysql mysql2.拷貝&#xff1a;cp -R mysql-5.7.16-linux-glibc2.5-i686 /usr/local/mysql3.創建data目錄mkdir /usr/local/mysql/data3.安裝數據庫切換到/usr/loca/mysql目錄下cd /usr/local/mysql修改當前目錄的所有者為…

02-c#基礎之01-基礎語法(一)

1.注釋符 1&#xff09;注銷 2) 解釋 2.C#中的3種注釋符 1&#xff09;單行注釋// 2)多行注釋/*要注釋的內容*/ 3)文檔注釋///多用來解釋類或者方法 2.VS中的快捷鍵 轉載于:https://www.cnblogs.com/yoyo-524/p/6502827.html

day01_初識python

編譯型&#xff1a;一次性將所有的代碼編譯呈二進制文件。C/C 優點&#xff1a;執行效率高 缺點&#xff1a;開發速度慢&#xff0c;不能跨平臺 解釋型&#xff1a;當程序運行時&#xff0c;從上到下一行一行的解釋為二進制文件 優點&#xff1a;開發效率快&#xff0c;可以跨平…

leetcode1414. 和為 K 的最少斐波那契數字數目(貪心算法)

給你數字 k &#xff0c;請你返回和為 k 的斐波那契數字的最少數目&#xff0c;其中&#xff0c;每個斐波那契數字都可以被使用多次。 斐波那契數字定義為&#xff1a; F1 1 F2 1 Fn Fn-1 Fn-2 &#xff0c; 其中 n > 2 。 數據保證對于給定的 k &#xff0c;一定能找…

四五六年級計算機教學計劃,五六年級信息技術教學計劃

五六年級信息技術教學計劃一、大綱對本冊教材的要求作為小學階段的信息技術課程&#xff0c;應以學生對計算機的學習心理、學習行為和學習方法為背景&#xff0c;把計算機基礎知識和計算機最新應用融于一體&#xff0c;使之既體現信息技術學科的教學理論&#xff0c;又吸收現代…

ios 跨域_如何在iOS和Android中建立跨域通信橋

ios 跨域I was working on a certain project at work, in which I needed to connect several varying components via messages. Each had its own logic and code language. This made me want to understand all the ways different platforms enable communication.我正在…

阿里巴巴旗下平臺口碑推出無人收銀技術,改造便利店市場;重慶法院運用 AI 探索“智能判案”...

阿里巴巴旗下平臺口碑推出無人收銀技術&#xff0c;改造便利店市場 雷鋒網消息 阿里巴巴旗下本地生活服務平臺口碑今日宣布在上海新興便利店品牌24鮮上線無人收銀技術。消費者只要打開支付寶&#xff0c;掃一掃想要購買的商品的條形碼&#xff0c;就可以自助提交訂單完成支付。…

如何使用射手影音尋找字幕

我們以"理智與情感"Sense and Sensibility為例&#xff0c;在迅雷搜索了下載&#xff0c;結果到了99%就不動了&#xff0c;由于是字幕文件&#xff0c;不能直接把TD的后綴去掉看影片&#xff0c;但是影片已經下載完成&#xff0c;所以我們使用射手影音播放該電影。&a…

mysql 表分區優缺點_Mysql分區表局限性總結

本文測試的版本XML/HTML代碼mysql>select version();------------| version() |------------| 5.1.33-log |------------1 row in set (0.00 sec)一、關于Partitioning Keys, Primary Keys, and UniqueKeys的限制在5.1中分區表對唯一約束有明確的規定&#xff0c;每一個唯一…

C# PagedList 真分頁

一&#xff1a;nuget 下載 PagedList 二&#xff1a;前端頁面 1.需要的數據 model PagedList.IPagedList<DeviceModel>  using PagedList.Mvc 2.使用數據 foreach (var item in Model)   {    <tr> <td>item.Name</td>       <td>…

leetcode1497. 檢查數組對是否可以被 k 整除

給你一個整數數組 arr 和一個整數 k &#xff0c;其中數組長度是偶數&#xff0c;值為 n 。 現在需要把數組恰好分成 n / 2 對&#xff0c;以使每對數字的和都能夠被 k 整除。 如果存在這樣的分法&#xff0c;請返回 True &#xff1b;否則&#xff0c;返回 False 。 示例 1…

計算機頁面設置代碼,計算機二級考試Access輔導:頁面設置模塊代碼分享

Dim up, dn, le, ri, si, liAs Single , co As string’定義邊距及頁面函數Sub ymszmk(strName As String) ’頁面設置模塊On Error GoTo Err_ymszmkIf Nz(DCount("*", "REPORTLIP", "REPORT’" & strName & "’")) 0 ThenMs…

讓我們了解Set及其在JavaScript中的獨特功能

by Asif Norzai通過Asif Norzai 讓我們了解Set及其在JavaScript中的獨特功能&#x1f3b2; (Lets learn about Set and its unique functionality in JavaScript &#x1f3b2;) 設置&#x1f3b2; (SET &#x1f3b2;) ES2015/ES6 gave us a lot of useful tools and feature…

C語言第二次博客作業---分支結構

一、PTA實驗作業 題目1&#xff1a;計算分段函數[2] 本題目要求計算下列分段函數f(x)的值&#xff1a; 1.實驗代碼 double x,result;scanf("%lf",&x);if(x>0){resultsqrt(x);}else{resultpow(x1,2)2*x1/x;}printf("f(%.2f) %.2f",x,result); 2 設計…

oracle+數據到+mysql數據庫亂碼_oracle數據mysql數據庫亂碼

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里云數據庫專家保駕護航&#xff0c;為用戶…

ajax 不執行

1、get形式訪問&#xff1a; 一個相同的URL 只有一個結果&#xff0c;所以 第二次訪問的時候 如果 URL字符串沒變化 瀏覽器是 直接拿出了第一次訪問的結果&#xff0c;post則不會 解決辦法: 1、urlnew Date(); &#xff08;每次訪問時url不同&#xff09; 2、 type : get,   …

leetcode870. 優勢洗牌(貪心算法)

給定兩個大小相等的數組 A 和 B&#xff0c;A 相對于 B 的優勢可以用滿足 A[i] > B[i] 的索引 i 的數目來描述。 返回 A 的任意排列&#xff0c;使其相對于 B 的優勢最大化。 示例 1&#xff1a; 輸入&#xff1a;A [2,7,11,15], B [1,10,4,11] 輸出&#xff1a;[2,11,…

Mysql中行轉列和列轉行

一、行轉列即將原本同一列下多行的不同內容作為多個字段&#xff0c;輸出對應內容。建表語句DROP TABLE IF EXISTS tb_score; CREATE TABLE tb_score( id INT(11) NOT NULL auto_increment, userid VARCHAR(20) NOT NULL COMMENT 用戶id, subject VARCHAR(20) COMMENT…

OSChina 周四亂彈 ——妹子喜歡的是程序員 這是標準……

2019獨角獸企業重金招聘Python工程師標準>>> Osc亂彈歌單&#xff08;2017&#xff09;請戳&#xff08;這里&#xff09; 【今日歌曲】 一葉孤鴻 &#xff1a;分享Nanaka的單曲《いのちの名前&#xff08;Cover 木村弓&#xff09;》 《いのちの名前&#xff08;C…