階乘函式 斐波那契數列
#include #include階乘 斐波那契#include
using
namespace
std;
//階乘函式
int fact(int
n)//
斐波那契數列
int fib(int
n)int
main()
排列問題
#include #include排列問題 對以後的排列樹有前置作用#include
#include
using
namespace
std;
//陣列長度 排列總數
intn, ans;/**
*@param s 陣列首位址
*@param k 已經匹配完成[0,k-1]
*@param n 陣列總長度 */
void perm(int *s,int k, int
n) cout
<
ans++;
return
; }
for(int i=k; i<=n; i++)
}int
main()
//對輸入的數 進行排序
sort(s, s+n);
cout
<
perm(s,
0, n-1
); cout
<< "
排列總數
"<< ans<
return0;
}
整數劃分
#include #include整數劃分#include
#include
using
namespace
std;
//整數劃分問題/**
*f(n,m)代表 n的整數劃分中 最大的數不超過m的方案數
*/int f(int n, int
m)int
main()
漢諾塔問題
#include #include漢諾塔二分問題#include
#include
using
namespace
std;
//漢諾塔問題
char str = ;
void mov(int a, int b, int
n) //
a移到b 借助c
void hanoi(int n,int a,int b,intc)}
intmain()
#include #include二分遞迴版#include
#include
using
namespace
std;
intn,k;
int find(int *s, int l, int r, int
k)int
main()
sort(s, s+n);
int c = find(s, 0, n-1
, k);
if(c!=-1
) cout
<< c <
else
cout
<
沒有找到
"<
return0;
}
非遞迴 迭代版 見 鏈結 :
演算法導論第二章
插入排序原始碼 1 include 2 include 3 4using namespace std 56 void insert sort inta 7 17 a i 1 key 18 19 2021 intmain 22view code 逆序輸出 1 include 2 include 3 4...
演算法導論 第二章作業
作業2.1 2 template void insert t a,int n a i 1 key 2.1 3 template void find t a,int n,t v if i 1 v nil 迴圈不變式 初始化 i 1,v還沒和任何a陣列中的元素比較,所以是 1,它為真。保持 如果j迴圈到...
演算法導論第二章筆記
這一章首先以乙個插入排序演算法開始,以此為切入點分析演算法。書上以偽 來介紹演算法,但是在這裡我基本上會用c語言實現一遍,並用自己的語言複述一遍演算法的思想。首先附上插入排序的具體實現。void insert sort eletype arr int start int end arr j 1 te...