按我自己的理解遞迴就是同乙個函式的迴圈執行。
1、找重複
找到一種劃分方法
找到遞推公式或者等價轉接都是父問題轉化為求解子問題
2、找變化的量
變化的量通常要作為引數
3、找出出口
找到邊界值
斐波那契數列:
static int fib
(int n)
insertsort
(arr,k: k-1)
; int x = arr[k]
; int index = k-1;
while
(x) arr[index]
==x;
2、二分排序:
function
binarysearch
(data,dest, start,end)
if(dest < data[m]
)else
return
false
;}
3、希爾排序:
function
shellsort
(arr)
for(gap; gap >
0; gap= math.
floor
(gap/5)
) arr[j+ gap]
=temp;}}
return arr;
}
4、氣泡排序:
function
sort
(elements)}}
}
藍橋杯備賽 第三彈!
上節內容主要針對迴圈結構進行了整理,第三彈中主要根據 演算法競賽入門經典第二版 第三章的內容進行小結,也算是乙個學習筆記吧 1.演算法競賽中,陣列一般會宣告得稍大一些,且比較大的陣列應盡量宣告在main之外,否則程式可能無法執行。如 int a 1000000 位於主函式內程式會報錯。解析 區域性變...
藍橋杯入門訓練 藍橋杯備賽
begin 1 a b問題str1 input str2 str1.split s int str2 0 int str2 1 print s begin 2 序列求和s int input 用公式計算而不用迴圈,避免超時 n s s 1 2print int n begin 3 圓的面積impor...
AYITACM第三週周賽 E 盒子遊戲
description 有兩個相同的盒子,其中乙個裝了n個球,另乙個裝了乙個球。alice和bob發明了乙個遊戲,規則如下 alice和bob輪流操作,alice先操作每次操作時,遊戲者先看看哪個盒子裡的球的數目比較少,然後清空這個盒子 盒子裡的球直接扔掉 然後把另乙個盒子裡的球拿一些到這個盒子中,...