1.乙隻青蛙一次可以跳上一級台階,也可以跳上二級台階
為了跳上n級台階一共有幾種跳法
解析
1.n=1 1種
2.n=2 2種
3.n級台階可以由n-1或者n-2級台階跳上來f(n)=f(n-2)+f(n-1)
#include
using
namespace
std;
int a[100]=;
int jump(int n)
return a[n];
}int main()
2.我們可以用2*1的小矩形無重疊乙個大的2*n的矩形,我們用n個這樣的小矩形有多少種覆蓋方法
解析
小矩形可以橫著放或者豎著放
1.橫著放 矩形變成了2*(n-2)大小的矩形的覆蓋方法
2.豎著放 矩形變成了2*(n-1)大小的矩形的覆蓋方法
斐波那契演算法
其思想與折半查詢 插值查詢沒有多大區別,本質上只是分割點的選擇不同。斐波那契查詢需要構造斐波那契數列,該數列的作用就是提供分割點 好多演算法書都沒有介紹清楚啊!參閱折半查詢 插值查詢以及斐波那契查詢 1 演算法首先找到構造乙個查詢表,即在原來的陣列上新增元素,使得該查詢表 陣列 的長度為某個斐波那契...
斐波那契查詢演算法
與二分查詢相比,斐波那契查詢演算法的明顯優點在於它只涉及加法和減法運算,而不用除法。因為除法比加減法要占去更多的機時,因此,斐波那契查詢的平均效能要比折半查詢好。include void fibonacci int f int fibonacci search int a,int key,int n...
斐波那契查詢演算法
斐波那契查詢的核心是 1 當key a mid 時,查詢成功 2 當keya mid 時,新的查詢範圍是第mid 1個到第high個,此時範圍個數為f k 2 1個,即陣列右邊的長度,所以要在 f k 2 1 範圍內查詢。如下 1 include2 include 3 include4 includ...