数据结构:(翻转二叉树) 若二叉树采用二叉链表作存储结构,要交换其所有分支结点的左右子树的位置,采用()遍历方法最合适
生活随笔
收集整理的这篇文章主要介绍了
数据结构:(翻转二叉树) 若二叉树采用二叉链表作存储结构,要交换其所有分支结点的左右子树的位置,采用()遍历方法最合适
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
题目
若二叉树采用二叉链表作存储结构,要交换其所有分支结点的左右子树的位置,采用()遍历方法最合适?(北京航空航天大学1999,北京工业大学2016)
A. 前序
B. 中序
C. 后序
D. 层次
答案
用二叉链表存储结构也就是左孩子右兄弟的存储结构。
1800题书上答案:A,C
北工大2016考研试题答案:C
评注:实际上B,D也是可以的,只不过不是很方便,因此不是“最合适”。
下面给出代码(均通过leetcode测试用例验证)
题解
后序遍历
做好当前结点子树内部的交换,然后交换当前结点的左右子树。
中序遍历
先序遍历
层次遍历
测试用例来源:leetcode 226.翻转二叉树
总结
以上是生活随笔为你收集整理的数据结构:(翻转二叉树) 若二叉树采用二叉链表作存储结构,要交换其所有分支结点的左右子树的位置,采用()遍历方法最合适的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 数据结构:详解KMP算法,手工求解nex
- 下一篇: 数据结构:在下述几种树中,()可以表示静