当前位置: 首页 > news >正文

专业网站制作软件seo教学网seo

专业网站制作软件,seo教学网seo,空滤网站怎么做,王建设医生个人网站恢复二叉搜索树 难度:中等 题目描述 给你二叉搜索树的根节点 root ,该树中的 恰好 两个节点的值被错误地交换。请在不改变其结构的情况下,恢复这棵树 。 示例1 输入: root [1,3,null,null,2] 输出:[3,1,null,nul…

恢复二叉搜索树

难度:中等

题目描述

给你二叉搜索树的根节点 root ,该树中的 恰好 两个节点的值被错误地交换。请在不改变其结构的情况下,恢复这棵树

示例1

输入: root = [1,3,null,null,2]
输出:[3,1,null,null,2]

示例2

输入: root = [3,1,4,null,null,2]
输出:[2,1,4,null,null,3]

题解

因为二叉搜索树的性质可得,将其中序遍历存储到列表中,数值为单调递增,由此可以得到以下步骤

  • 遍历列表,找到递增中断点
  • 再次遍历列表,找到中断点应该在的位置
  • 将两个数值进行交换

完成之后即为所求

想法代码

public class TreeNode
{public int val;public TreeNode left;public TreeNode right;public TreeNode(int val = 0, TreeNode left = null, TreeNode right = null){this.val = val;this.left = left;this.right = right;}
}
class Solution
{IList<TreeNode> travelList = new List<TreeNode>();public static void Main(String[] args){TreeNode root = new TreeNode(3){left = new TreeNode(1),right = new TreeNode(4){left = new TreeNode(2)}};Solution solution = new Solution();solution.RecoverTree(root);foreach (var a in solution.travelList){Console.Write(a.val + " ");}}public void RecoverTree(TreeNode root){Travel(root);int index1 = 1;int index2 = 0;while (index1 < travelList.Count){if (travelList[index1].val > travelList[index1 - 1].val){index1++;}else{break;}}while (index2 < travelList.Count){if (travelList[index2].val > travelList[index1 - 1].val){break;}index2++;}TreeNode treeNode1 = travelList[index1 - 1];TreeNode treeNode2 = travelList[index2 - 1];int val1 = treeNode1.val;int val2 = treeNode2.val;treeNode1.val = val2;treeNode2.val = val1;}public void Travel(TreeNode root){if (root == null){return;}Travel(root.left);travelList.Add(root);Travel(root.right);}
}
avel(root.left);travelList.Add(root);Travel(root.right);}
}
http://www.hrbkazy.com/news/18846.html

相关文章:

  • 网上商城前端模板债务优化是什么意思
  • 如何做php游戏介绍网站优化网络推广外包
  • 做网站42类商标怎么选小类sem与seo的区别
  • 中国建设网站企业网上银行业务功能河南网站建站推广
  • 专业营销的网站建设公司全国十大婚恋网站排名
  • 大名企业做网站推广淘宝推广工具
  • 做招聘网站最近发生的热点新闻
  • wordpress安装不上seo怎么收费
  • 如何利用谷歌云做自己的网站网站怎么制作教程
  • 企业内部网站源码营销是什么意思
  • 重庆大型的网站建设北京网站优化方案
  • 网站建设维护资质爱站关键词挖掘软件
  • 网站的管理和维护谷歌网页版入口
  • 有自己网站做淘宝客赚钱产品市场营销策划书
  • 哪里有网站设计学网站推广的技术有哪些
  • 宿迁装饰网站建设公司排名制作链接的app的软件
  • 什么是内容管理系统seo搜索引擎优化工程师招聘
  • 抚州市做棋牌网站汕头seo外包机构
  • 杭州文化传媒类高端网站建设公司公司的公关
  • 网站挂黑链工具seo搜索引擎优化课程总结
  • 网站域名解析登陆英国搜索引擎
  • 网站排名优化课程人民日报今日头条新闻
  • 网站js修改头像代码长尾关键词查询工具
  • 给我一个可以在线观看的免费aso优化教程
  • 肇东网站建设外链seo服务
  • 中国人民银行网站查询株洲seo排名
  • 中山网站建设方案托管seo关键字优化价格
  • 重庆开县网站建设报价培训优化
  • 做ppt高手_一定要常去这八个网站厦门seo网站管理
  • 查询网站备案号app郑州seo培训