Fibonacci数列递归算法的实现,集合全排列问题递归算法的实现,整数划分问题递归算法的实现;
时间: 2024-03-30 12:14:40 浏览: 74
Fibonacci数列递归算法的实现可以这样写:
```
int fibonacci(int n) {
if (n == 0) {
return 0;
}
if (n == 1 || n == 2) {
return 1;
}
return fibonacci(n-1) + fibonacci(n-2);
}
```
集合全排列问题递归算法的实现可以这样写:
```
void permute(vector<int>& nums, int begin, vector<vector<int>>& result) {
if (begin == nums.size()) {
result.push_back(nums);
return;
}
for (int i = begin; i < nums.size(); i++) {
swap(nums[begin], nums[i]);
permute(nums, begin+1, result);
swap(nums[begin], nums[i]);
}
}
```
整数划分问题递归算法的实现可以这样写:
```
int partition(int n, int m) {
if (n == 1 || m == 1) {
return 1;
}
if (n < m) {
return partition(n, n);
}
if (n == m) {
return 1 + partition(n, n-1);
}
return partition(n-m, m) + partition(n, m-1);
}
```
希望这些代码能够帮到你!
阅读全文