当前位置:网站首页>Summary of binary tree recursive routines
Summary of binary tree recursive routines
2022-07-05 23:07:00 【Bright morning light】
The time complexity of all previous binary tree recursion routines is O ( N ) O(N) O(N), among N N N Is the number of nodes in a binary tree , And they are all optimal solutions .
A node gets information from left and right children , Then integrate into this node , At this time, the left and right children are no longer needed , The parent node of this node also repeats this process , The whole process is equivalent to After the sequence traversal , Do dynamic planning on the tree , So it's called tree dp.
This routine includes two levels :
Thought reminder
How to achieve the goal :X How to achieve the goal of a binary tree with root node ?
Means of implementation : Ask for information from the left and right trees , List the possibilities , This possibility must be based on the information from the left and right trees ( Constant time can be obtained ), The processed information of the same magnitude is also constant time .
Design information body , Analyze possibilities , The common classification is “ And target X of ” and “ And target X irrelevant ”.Templates
① DesignInfo
Information body ;
②process
function :process
Function must returnInfo
; When empty , If the value is bad, it will return null , Set it if it is good ;
③ By default, the left tree information is obtained first , Then get the right tree information ;
④ After analyzing the possibility , hold X All the necessary information is processed , This is highly templated .
This routine can solve most binary tree problems, especially tree type dp problem , The essence is to use Recursively traversing a binary tree The convenience of .
The whole process is summarized as follows :
1) Suppose X Node as root , Suppose you can ask X Left tree and X The right tree wants any information
2) Under the assumptions of the previous step , Discuss with X Is the tree of the root node , Got the answer possibility ( above all )
3) After listing all the possibilities , Determine what kind of information you need from the left tree and the right tree
4) Find the complete set of left tree information and right tree information , Is the information that any subtree needs to return S
5) Recursive functions return S, Every sub tree asks so
6) Write code , In the code, consider how to integrate the information of the left tree and the information of the right tree into the information of the whole tree
边栏推荐
- Spectrum analysis of ADC sampling sequence based on stm32
- 关于MySQL的30条优化技巧,超实用
- C Primer Plus Chapter 9 question 9 POW function
- 实现反向代理客户端IP透传
- Vision Transformer (ViT)
- Krypton Factor-紫书第七章暴力求解
- Element operation and element waiting in Web Automation
- Finally understand what dynamic planning is
- 2:第一章:认识JVM规范1:JVM简介;
- Starting from 1.5, build a micro Service Framework -- log tracking traceid
猜你喜欢
SPSS analysis of employment problems of college graduates
30 optimization skills about mysql, super practical
LeetCode145. Post order traversal of binary tree (three methods of recursion and iteration)
Google Maps case
[speech processing] speech signal denoising based on Matlab GUI Hanning window fir notch filter [including Matlab source code 1711]
Data type, variable declaration, global variable and i/o mapping of PLC programming basis (CoDeSys)
[speech processing] speech signal denoising and denoising based on MATLAB low-pass filter [including Matlab source code 1709]
实现反向代理客户端IP透传
第十七周作业
openresty ngx_ Lua request response
随机推荐
Three.js-01 入门
Starting from 1.5, build a micro Service Framework -- log tracking traceid
CJ mccullem autograph: to dear Portland
一文搞定JVM常见工具和优化策略
从 1.5 开始搭建一个微服务框架——日志追踪 traceId
Realize reverse proxy client IP transparent transmission
Nacos installation and service registration
【Note17】PECI(Platform Environment Control Interface)
视频标准二三事
Paddy serving v0.9.0 heavy release multi machine multi card distributed reasoning framework
Google Maps case
关于MySQL的30条优化技巧,超实用
一文搞定JVM的内存结构
Metasploit(msf)利用ms17_010(永恒之蓝)出现Encoding::UndefinedConversionError问题
数据库基础知识(面试)
Element operation and element waiting in Web Automation
H5c3 advanced - player
Vcomp110.dll download -vcomp110 What if DLL is lost
npm ELECTRON_ Mirror is set as domestic source (npmmirror China mirror)
Non rigid / flexible point cloud ICP registration