数据结构论坛

首页 » 分类 » 问答 » 樊小文的数据结构与算法随笔1
TUhjnbcbe - 2020/12/21 14:30:00
穷竭搜索

递归函数

递归函数=在一个函数中再次调用该函数本身的行为叫做递归,这样的函数称为递归函数.

例子一

n!=n*(n-)!

转化↓

intfact(intn){

if(n==0)return;

returnn*fact(n-);

}

例子二

an=an--+an-2(n)

转化↓

intfib(intn){

if(n=)returnn;

returnfib(n-)+fib(n-2);

}

记忆化↓

intmemo[MAX_N+];

intfib(intn){

if(n=)returnn;

if(nemo[n]!=0)returnmemo[n];

returnmemo[n]=fib(n-)+fib(n-2);

}

穷竭搜索不是普通的算法,是一种思维。

栈和队列

栈(Stack)是支持push和pop两种操作的数据结构。

push是在栈的顶端放入一组数据的操作。

pop是从其顶端取出一组数据的操作。

这意味着,最后放入的元素能够最先取出(LIFO:LastInFirstOut)。

队列

队列(Queue)亦是支持push和pop两种操作的数据结构。

不同的是,队列的pop完成的是取出底端一组数据的操作。

这意味着,最先放入的元素能够最先取出(FIFO:FirstInFirstOut)。

预览时标签不可点收录于话题#个上一篇下一篇
1
查看完整版本: 樊小文的数据结构与算法随笔1