原题链接https://codeforces.com/problemset/problem/8/C 这题自己sb,后面s数组没有加够,出现了空值,调了老半天,我是sb。 题意: 给你n个结点,权值1~n,问你最多能组成多少棵深度不小于 k 的二叉搜索树。 思路:大的树是由小的树构成的,因此可以递推( ...
分类:
其他好文 时间:
2021-04-07 11:25:35
阅读次数:
0
splay、treap、set、红黑树、avl、B树 splay: 平衡二叉树,经过左旋和右旋操作,不会改变中序遍历的顺序。维护的是二叉树的一个中序序列,同时调整树的高度。 在插入和查询操作x的时候,都会把x变到树根的位置。 核心:每操作一个节点,均将该节点旋转到树根。一个点用到的话,之后的话很可能 ...
分类:
其他好文 时间:
2021-04-07 10:41:01
阅读次数:
0
编号104:二叉树的最大深度 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 返回它的最大深度 3 。 思路 递归实现:先找左子树的最大深度;再找 ...
分类:
其他好文 时间:
2021-04-05 12:45:42
阅读次数:
0
问题:求从起点走到终点的最短路径 Java代码: 1 package com.lzp.maze.dfs; 2 3 import java.util.Scanner; 4 5 /** 6 * @author LZP 7 * @date 2021年4月3日 8 * @Description 9 * @v ...
分类:
其他好文 时间:
2021-04-05 12:41:26
阅读次数:
0
仅供自己学习 思路: 按照题目要求我们需要定义一个head头节点,并且因为树是二叉搜索树,所以要采取中序遍历才能得到从小到大的排序。 按照中序遍历的模板 dfs(root->left); cout<<root->val; dfs(root->right); 同样我们也通过这个模板写DFS,这里因为是 ...
分类:
其他好文 时间:
2021-04-05 12:33:29
阅读次数:
0
二叉树的遍历 前序遍历 LeetCode.144. 二叉树的前序遍历 二叉树的前序/中序/后序遍历的非递归描述一般适合用深度优先搜索 (DFS, depth-first search), 并使用栈的数据结构. 版本1 递归 from typing import List class Node: de ...
分类:
其他好文 时间:
2021-04-05 11:47:20
阅读次数:
0
题目链接 #题目大意 求树上每个点到其他点的最大距离。 #解题思路 首先随便选择一个顶点作为根然后跑一遍dfs,记录每个顶点以其为根能到达的最大深度和次大深度,然后再跑一遍dfs,对于每个顶点,如果要到达一个距离最大的点,要么就是原来中的子树中的距离最大的点,要么就是经过父节点的某个点。 #代码 c ...
分类:
其他好文 时间:
2021-04-02 13:22:41
阅读次数:
0
python2与python3 经典类是深度优先:经典类不继承object python2点几 新式类是广度优先cs算法(非广度优先)继承object的是新式类:python3 中没有经典类都是新式类 c3算法需要你在类中先继承的前后顺序,进行计算顺序 1.画出类的继承线形图2.C3计算3.结果是继 ...
分类:
编程语言 时间:
2021-04-02 13:11:45
阅读次数:
0
一.二叉树的前序遍历 https://leetcode-cn.com/problems/binary-tree-preorder-traversal/ class Solution { public List<Integer> preorderTraversal(TreeNode root) { L ...
分类:
其他好文 时间:
2021-04-01 13:41:51
阅读次数:
0
继承和派生 目录 一 继承介绍 1.1 什么是继承 1.2 为什么要有继承 二 继承与抽象(如何使用继承) 四 属性查找 五 继承的实现原理 5.1 菱形问题 5.2 继承原理 5.3 深度优先和广度优先 六 python Mixins机制 七 派生和方法重用 7.1 派生 7.2 方法重用 回到顶 ...
分类:
其他好文 时间:
2021-04-01 13:23:05
阅读次数:
0