遞迴演算法講解(演算法 例題)

2021-10-16 12:31:53 字數 1632 閱讀 3865

乙個問題只要同時滿足以下3個條件,就可以用遞迴來解決:

題目鏈結

**:

#include

using

namespace std;

void

hanno

(int n,

char a,

char b,

char c)

}int

main()

題目鏈結

**:

#include

using

namespace std;

intpass

(int s,

int y)

}int

main()

return0;

}

題目鏈結

**:

#include

using

namespace std;

void

qsort

(int

*a,int l,

int r)

a[i]

=k;qsort

(a,l,i-1)

;qsort

(a,i+

1,r);}

}int

main()

qsort

(a,1

,n);

for(i=

1;i<=n;i++)}

return0;

}

題目鏈結

**:

#include

using

namespace std;

interfen

(int

*a,int l,

int r,

int k)

return-1

;}int a[

3000010];

intmain()

int q;

cin>>q;

while

(q--

)return0;

}

題目鏈結

**:

#include

#include

#define ll long long

#define inf 0x3f3f3f3f

const

int n =

1e5+10;

const

int m =

111;

using

namespace std;

int a[11]

;///右移元素

void

move_r

(int l,

int r)

///左移元素

void

move_l

(int l,

int r)

///遞迴全排列

void

perm

(int l,

int r)

}else}}

intmain()

perm(1

,n);

return0;

}

優質部落格

基礎演算法例題(遞迴 分治 )

遞迴 include include includeusing namespace std void comp int arr,int l,int r,int max1,int max2 else if r l 1 else else int main printf n comp a,0,n 1,m...

Dijkstra演算法 例題

dijkstra演算法 從起點到終點求最短路 使用要求權值為正 1 求短路i 題目 點數 500 邊數 1e5 include include include using namespace std const int n 510,m 1e5 10 時間複雜度o n m int n,m 鄰接矩陣 i...

模擬演算法例題

一 火柴棒 題目描述 給你n根火柴棍,你可以拼出多少個形如 a b c 的等式?等式中的a b c是用火柴棍拼出的整數 若該數非零,則最高位不能是0 用火柴棍拼數字0 9的拼法如圖所示 注意 1 加號與等號各自需要兩根火柴棍 2 如果a b,則a b c與b a c視為不同的等式 a b c 0 3...