一、 考试的总体要求 本考试内容由两部分组成,数据结构和程序设计,各占总分的50%。 数据结构是计算机科学与技术专业基础课,要求学生掌握基本的数据结构及相关的存储方式、基本运算、算法和应用,并能运用盒图、结构化语言、类C、高级语言(C或C++)等方法之一编写算法。 程序设计指采用C++语言,应用数据 ...
分类:
其他好文 时间:
2020-02-27 01:05:22
阅读次数:
60
22. 从上往下打印二叉树 题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 思路: 层序遍历二叉树即可 1 import java.util.ArrayList; 2 import java.util.Queue; 3 import java.util.LinkedList; 4 ...
分类:
其他好文 时间:
2020-02-24 16:44:59
阅读次数:
65
最开始想的方法用一个vector存下这颗树的中序遍历,然后看这个vector是否严格升序。这里空间复杂度高了,实际上在递归遍历 二叉树的时候,设定好每个节点的上界和下界,在界限内就ok了,正常递归就可以了。 AC代码: class Solution { public: // 加一个界限 bool i ...
分类:
其他好文 时间:
2020-02-12 18:50:54
阅读次数:
73
二叉树的递归遍历很容易写出来,对于递归遍历则需要借助辅助栈,并且不同的遍历次序迭代的写法也不尽相同,这里整理一些二叉树迭代遍历的实现 二叉树的前序遍历 [leetcode144]:https://leetcode cn.com/problems/binary tree preorder traver ...
分类:
其他好文 时间:
2020-02-11 00:35:37
阅读次数:
73
二叉树的性质 1. $二叉树的每个节点最多只有 2 个子树 (不存在度 2 的节点) 有左右之分,不可以颠倒$ 2. $二叉树的第 i 层最多有 2^{i 1}个结点$ 3. $设二叉树的深度为 k 则: 二叉树最多有 2^{k} 1 个结点$ 4. $对任何一棵二叉树 T ,设其叶节点数为 n_{ ...
分类:
其他好文 时间:
2020-02-04 13:50:30
阅读次数:
71
二叉树的遍历 前序遍历 "Leetcode preorder" 中序遍历 "Leetcode inorder" 后续遍历 "Leetcode postorder" Morris Traversal 前序遍历 递归 时间O(n), 空间O(n) 非递归 时间O(n), 空间O(n) 中序遍历 递归 非 ...
分类:
其他好文 时间:
2020-02-02 15:55:30
阅读次数:
63
链接: "LeetCode653" 给定一个二叉搜索树和一个目标结果,如果 BST 中存在两个元素且它们的和等于给定的目标结果,则返回 true。 相关标签: 哈希表 类似于求两数之和,我们只需要在遍历二叉树过程中寻找是否存在有数为k 已经遍历到的数即可。 代码如下: python: C++: ...
分类:
其他好文 时间:
2020-01-28 22:58:39
阅读次数:
75
二叉树的建立 前中建树 后中建树 层中建树 二叉树的遍历 递归算法 先序非递归 中序非递归 后序非递归 层次遍历 多叉树的静态表示 ...
分类:
其他好文 时间:
2020-01-21 10:47:32
阅读次数:
83
94.二叉树的中序遍历 递归遍历 迭代遍历 莫里斯遍历 莫里斯遍历主要思想是将中间根节点放到左子树的最右侧节点。 可以从运行时间和使用内存看出来,确实莫里斯遍历要由于普通迭代。 ...
分类:
其他好文 时间:
2020-01-19 09:22:01
阅读次数:
95
二叉树的遍历本篇算一个资料整理,就是二叉树遍历方法,有先序遍历(PreOrder)、中序遍历(InOrder)、后序遍历(PostOrder)、广度优先遍历二叉树(breadth_first_search)、深度优先遍历(depth_first_search)示例遍历二叉树:二叉树节点格式:classTreeNode:def__init__(self,val):self.val=valself.l
分类:
编程语言 时间:
2019-12-21 15:49:13
阅读次数:
92