python二叉树遍历教程(二叉树python修改指定结点算法)

技术怎么返回python二叉树的中序遍历今天就跟大家聊聊有关怎么返回python二叉树的中序遍历,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.给定一个二叉树,

今天跟大家讲讲如何回到python二叉树的中序遍历。很多人可能不太了解。为了让大家更好的了解,边肖为大家总结了以下内容。希望你能从这篇文章中有所收获。

1.给定一棵二叉树,返回它的中间顺序遍历。

2 .示例

示例:输入: [1,null,2,3] 1 \ 2/3输出3360 [1,3,2]高级:递归算法非常简单。可以通过迭代算法做到吗?

3、解决思路

这里有两种方法可以解决这个问题,一种是递归求解,另一种是迭代求解。

4、问题解决程序

导入Java . util . ArrayList;导入Java . util . list;导入Java . util . stack;public class inodertraversaltest2 { public static void main(String[]args){ tree node t1=new tree node(1);TreeNode t2=新的tree node(2);TreeNode t3=新的tree node(3);t1.right=t2t2.left=t3list integer list=inodertraversal 2(t1);system . out . println(' list=' list ');}私有静态list integer list=new ArrayList();公共静态list integer inodertraversation(tree node root){ if(root==null){返回列表;} dfs(根);退货清单;}私有静态void DFS(TreeNode root){ if(root . left!=null){ DFS(root . left);} list . add(root . val);if (root.right!=null){ DFS(root . right);} }公共静态list integer inodertraversal 2(TreeNode root){ if(root==null){ return list;} StackTreeNode堆栈=new Stack();TreeNode tempNode=rootwhile(!stack.isEmpty() || tempNode!=null) { while (tempNode!=null){ stack . push(tempNode);tempNode=tempNode.left} TreeNode temp=stack . pop();list . add(temp . val);tempNode=temp.right}返回列表;}}

5.问题解决程序的图片版本

怎么返回python二叉树的中序遍历

就按照二叉树的特点去做。递归在时间消耗上比迭代快得多。递归使用系统栈写,迭代使用自己创建的栈结构。

看完以上内容,你对python二叉树的中序遍历如何返回有什么进一步的了解吗?如果您想了解更多知识或相关内容,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/144273.html

(0)

相关推荐

  • 如何使用php工厂模式

    技术如何使用php工厂模式这篇文章主要介绍“如何使用php工厂模式”,在日常操作中,相信很多人在如何使用php工厂模式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用php工厂模式”

    攻略 2021年10月22日
  • web前端面试中的常见的算法问题有哪些

    技术web前端面试中的常见的算法问题有哪些这篇文章主要介绍“web前端面试中的常见的算法问题有哪些”,在日常操作中,相信很多人在web前端面试中的常见的算法问题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操

    攻略 2021年11月15日
  • mysql5.6升级到5.7.13后开启多源复制遇到重复的channel name该怎么办

    技术mysql5.6升级到5.7.13后开启多源复制遇到重复的channel name该怎么办这篇文章将为大家详细讲解有关mysql5.6升级到5.7.13后开启多源复制遇到重复的channel name该怎么办,文章内

    攻略 2021年11月16日
  • EditPlus密钥算法源码是怎么样的

    技术EditPlus密钥算法源码是怎么样的这篇文章主要为大家展示了“EditPlus密钥算法源码是怎么样的”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“EditPlus密钥算

    攻略 2021年11月23日
  • JAVA8的stream怎么使用

    技术JAVA8的stream怎么使用这篇文章主要讲解了“JAVA8的stream怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JAVA8的stream怎么使用”吧

    攻略 2021年11月30日
  • 如何使用纯java config来配置spring mvc方式

    技术如何使用纯java config来配置spring mvc方式这篇文章将为大家详细讲解有关如何使用纯java config来配置spring mvc方式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这

    攻略 2021年11月29日