日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > php開源 > php教程 > 【Leetcode】Recover Binary Search Tree

【Leetcode】Recover Binary Search Tree

來源:程序員人生   發(fā)布時間:2016-06-04 08:46:50 閱讀次數(shù):2423次

題目鏈接:https://leetcode.com/problems/recover-binary-search-tree/

題目:

Two elements of a binary search tree (BST) are swapped by mistake.

Recover the tree without changing its structure.

Note:
A solution using O(n) space is pretty straight forward. Could you devise a constant space solution?

思路:

1.中序 保存所有結(jié)點  空間復(fù)雜度O(n)

2.中序遞歸 保存前1個結(jié)點的指針 找到不對的結(jié)點

算法:

public void recoverTree(TreeNode root) { inorder(root); if (third != null) {// 2次逆序 int tmp = first.val; first.val = third.val; third.val = tmp; } else {// 1次逆序 int tmp = second.val; second.val = first.val; first.val = tmp; } } TreeNode pre, first, second, third; public void inorder(TreeNode root) { if (root == null) return; inorder(root.left); if (pre == null) { pre = root; } else { if (root.val < pre.val) { if (first == null) { // 如果第1次逆序 需要交換first和second結(jié)點 first = pre; second = root; } else {// 如果第2次逆序 只需要交換first和third結(jié)點 third = root; } } } pre = root; inorder(root.right); }


生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 美女又黄又免费的视频 | 免费aaaaaa少妇动态图美女 | 国产精品久久二区 | 69国产精品成人96视频色 | 色综合久久88色综合天天 | 91cc.live 最新国产 | 免费黄色欧美 | 日韩欧美色综合 | 国产精品久久久久久久久久久久午夜片 | 99精品欧美一区二区蜜桃免费 | 日本1级片 | 午夜网站在线观看 | 最近中文字幕免费视频 | 黄网视频在线观看 | 天堂影视 | 91精品国产91久久综合桃花 | 成人动漫一区二区三区 | 91超碰在线播放 | 日韩在线免费观看视频 | www久草 | 在线中文视频 | 成人在线免费电影 | 亚洲综合在线视频 | 爱爱免费视频网址 | 69网站在线观看 | www.7788久久久久久久久 | 国产成人99久久亚洲综合精品 | 一级毛片成人免费看a | 亚洲欧美日韩国产综合 | 99中文字幕| a天堂视频| www.亚洲色图.com | 在线激情网站 | 国产一区二区播放 | 国产精品久久久一区 | 精品久久亚洲 | 亚洲免费毛片 | 欧美日韩国产中文 | 91麻豆精品国产91久久久久久久久 | 国产午夜激情 | 亚洲视频在线观看网址 |