Tree

2019-02-24  本文已影响0人  日光降临
  • 二叉树的深度优先遍历使用递归实现的时候又叫递归遍历,递归就是函数调用自己,同时需要明确递归的出口。递归遍历可以分为前序,中序和后序遍历,时间复杂度是O(n)的,空间复杂度是与树的高度呈线性关系[logn, n]。 但是二叉树的深度优先遍历不一定要用递归实现,递归是一种比较容易的实现方法
  • 递归有两个层面的含义,数据结构的递归意味着数据结构是一层层嵌套的,而程序的递归就是指函数调用自己。递归是一种程序的写法,而不是一大类算法的统称。递归的三要素分别是定义,出口和拆解。出口是递归的终点,如果没有出口递归将不会停下来,会产生异常,但是递归的出口并不一定完全显示写出,只要保证函数在某些情况下会终止就可以。而递归的拆解就是递归本身了,是其核心
上一篇下一篇

猜你喜欢

热点阅读