第二章 :查詢與排序---------遞迴、查詢與排序補充
遞迴設計經驗:
①、找重複(子問題)
②、找重複中的變化量->引數
③、找引數變化趨勢->設計出口
求n的階乘:
*找重複:n*(n-1)的階乘,求n-1的階乘是原問題的重複(規模更小)----子問題
*找變化:變化的量應該作為引數
*找邊界 :出口
#include<iostream>
using namespace std;
/*
**求n的階乘
**找重複:n*(n-1)的階乘,求n-1的階乘是原問題的重複(規模更小)----子問題
**找變化:變化的量應該作為引數
**找邊界 :出口
*/
//n的階乘
int f1(int n){
if(n==1){
return 1;
}
return n*f1(n-1);
}
//列印i到j
void print(int i,int j){
if(i>j) return;
cout<<i<<" ";
print(i+1,j);
}
int main(){
cout<<f1(3)<<endl;
print(2,6);
return 0;
}
結果:
相關文章
- 第二章 :查詢與排序-------二分查詢的遞迴解法排序遞迴
- 第二章 :查詢與排序-------遞迴形式進行插入排序排序遞迴
- 第二章 :查詢與排序-------希爾排序排序
- 第二章 :查詢與排序-------遞迴經典問題——漢諾塔問題排序遞迴
- iOS 演算法之排序、查詢、遞迴iOS演算法排序遞迴
- 第二章 :查詢與排序-------2.16 解題實戰_小白上樓梯(遞迴設計)排序遞迴
- 第二章 :查詢與排序-------2.13_三種典型遞迴形式演算法的效能分析排序遞迴演算法
- 第二章 :查詢與排序-------2.15 分析10種排序演算法的穩定性排序演算法
- 排序和查詢排序
- 第三章:查詢與排序(下)----------- 3.20桶排序排序
- 第二章 :查詢與排序-------2.19題目詳解_找出最長連續遞增子序列排序
- 第三章:查詢與排序(下)----------- 3.19 計數排序排序
- 第三章:查詢與排序(下)----------- 3.21基數排序排序
- SqlServer遞迴查詢SQLServer遞迴
- PostgreSQL 遞迴查詢SQL遞迴
- sqlalchemy 遞迴查詢SQL遞迴
- 第二章 :查詢與排序-------2.18題目講解_在有空字串中的有序字串陣列中查詢排序字串陣列
- [20180625]函式與標量子查詢13(補充)函式
- 資料庫排序查詢資料庫排序
- 遞迴查詢子元素遞迴
- 第二章 :查詢與排序-------2.10常見函式的複雜度計算排序函式複雜度
- Django-ORM 之查詢排序DjangoORM排序
- 第三章:查詢與排序(下)----------- 3.28 特殊排序(利用sort函式)排序函式
- 第三章:查詢與排序(下)----------- 3.16堆的概念及堆排序思路排序
- 結構與演算法(04):排序規則與查詢演算法演算法排序
- 演算法+資料結構=程式,今天就來說說遞迴+排序+查詢,再加上樹與圖演算法資料結構遞迴排序
- Linq查詢之多個排序條件排序
- KunlunDB查詢優化(三)排序下推優化排序
- 折半查詢排序樹畫圖和排序
- java-遞迴(檔案查詢)Java遞迴
- SQL server資料庫with as子句與遞迴查詢的實現SQLServer資料庫遞迴
- 第三章 :查詢與排序-------3.2你需要掌握的快速排序演算法排序演算法
- 離線查詢與線上查詢
- Linq查詢語法與擴充方法
- 第三章:查詢與排序(下)----------- 3.11 趣味擴充_尋找發帖水王排序
- 第三章:查詢與排序(下)----------- 3.14 逆序對個數排序
- ORDER對查詢結果進行排序排序
- oracle之樹狀結構的儲存與展示(遞迴查詢)Oracle遞迴