树递归讲解

本文深入讲解了递归的概念,并通过详细阐述树的前序、中序和后序遍历,展示了递归在解决树结构问题中的重要作用。递归不仅是解决问题的一种方法,还能通过调整遍历顺序产生新的结果。最后,作者提到了回溯法与递归的相似之处,并以8皇后问题为例进一步说明。
摘要由CSDN通过智能技术生成

递归讲解


前言

简述下最近所学的一些比较重要的算法,此文章主要对递归在链表中树中的作用进行说明。


一、递归是什么?

递归简单的说就是自己调用自己。
递归的条件:
1、子问题和原问题具有相同的条件或者方法
2、递归的过程其实就是不断的将问题缩小,我们每次将问题缩小的时候都会用到上一个状态。
大家也可以参照递归的定义:为了描述问题的某一状态,必须用到该状态的上一状态,而描述上一状态,又必须用到上一状态的上一状态……这种用自已来定义自己的方法,称为递归定义。形式如 f(n) = n*f(n-1), if n=0,f(n)=1.

二、递归在树中作用(三种遍历方式)

1.前序遍历

在这里我将递归单独写出来方便理解

public void proOrder(TreeNode root){
   
	dfs(root);
}
public void dfs(TreeNode root){
   
	if(root 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值