题目链接 https://leetcode-cn.com/problems/er-cha-shu-de-shen-du-lcof/ 题目描述 输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。 例如: 给定二叉树 [3,9 ...
分类:
其他好文 时间:
2020-07-25 09:44:45
阅读次数:
60
引子 最近练习时,觉得有些生疏,所以加强锻炼。 具体实现 快速排序(从小到大排序,升序) public class QuickSort{ public static void swap(int[] arr, int i, int j){ int temp = arr[i]; arr[i] = arr ...
分类:
编程语言 时间:
2020-07-24 22:11:29
阅读次数:
94
题目 点这里看题目。 分析 原来数据的奇怪结尾就可以拿来判断特征呀 40pts ~ 55pts 太简单就不说了。 75pts 考虑完全二叉树怎么做。 这里需要注意一点,就是:\(n=262143=2^{18}-1\) ,也就是说,数据实际上就是一棵满二叉树。 由于满二叉树具有极强的对称性,我们不难想 ...
分类:
其他好文 时间:
2020-07-24 21:50:33
阅读次数:
73
给定一个二叉树,返回所有从根节点到叶子节点的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 输入: 1 / \ 2 3 \ 5 输出: ["1->2->5", "1->3"] 解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3 来源:力扣(LeetCode)链接:https: ...
分类:
其他好文 时间:
2020-07-24 15:45:50
阅读次数:
53
数组:按序号访问元素,连续存储,元素可以有序、也可以无序,用下标来定位元素,元素的数量确定(有上限),按下标访问很快,插入和删除元素、排序的开销比较大(元素的移位操作),数组元素无序时,元素的排序速度比较慢(依次比较),数组元素有序时,元素的查找速度比较慢(二分查找,比无序时快)。 链表:插入、删除 ...
分类:
编程语言 时间:
2020-07-24 15:38:12
阅读次数:
68
数据结构--哈希表(Java) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 介绍 哈希表底层是数组加链表或者是数组加二叉树,一个数组里面有多个链表,通过散列函数来提高效率 代码 package cn.guizimo.hash ...
分类:
编程语言 时间:
2020-07-24 09:40:08
阅读次数:
69
解题:前序遍历加上筛选 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = ...
分类:
其他好文 时间:
2020-07-23 23:27:44
阅读次数:
132
题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 输出: 二维列表:[[1,2],[4,5]] 思路: 使用两个列表分别存放当前层节点,下一层节点 1 # -*- coding:utf-8 -*- 2 # class TreeNode: 3 # def __init__(s ...
分类:
其他好文 时间:
2020-07-23 23:21:46
阅读次数:
78
思路:后序遍历, 分情况讨论: 1、两个节点在根的左侧 2、两个节点在根的右侧 3、两个节点在根的左右两侧 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * ...
分类:
其他好文 时间:
2020-07-23 22:15:14
阅读次数:
77
用C/C++编写二叉树的前序遍历,中序遍历,后序遍历(递归) 使用辅助队列的层序遍历(非递归) 特别说明一下层次遍历:借助一个队列,先将二叉树根结点入队,然后出队,访问出队结点,若它有左子树,则将左子树根结点入队;若它有右子树,则将右子树树根结点入队。然后出队,访问出队结点.......如此反复,直 ...
分类:
其他好文 时间:
2020-07-23 16:22:22
阅读次数:
66