欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP.NET遞歸法求階乘解決思路

 更新時間:2012年12月19日 17:29:16   作者:  
遞歸就是在過程或函數里調用自身,在使用遞歸策略時,必須有一個明確的遞歸結束條件,稱為遞歸出口遞歸算法解題通常顯得很簡潔,但遞歸算法解題的運行效率較低。所以一般不提倡用遞歸算法設計程序
前臺:
復制代碼 代碼如下:

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
!<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="=" />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>

后臺:
復制代碼 代碼如下:

protected void Button1_Click(object sender, EventArgs e)
{
int data = Convert.ToInt32(this.TextBox1.Text.Trim());//data為大于等于0的整數
this.TextBox2.Text = jieCheng(data).ToString();
}
private static int jieCheng(int data)
{
if (data == 0) //在這里需要考慮0和1的階乘都為1,所以data==0的時候要返回1.
{
return 1;
}
else
{
return data * jieCheng(data - 1);
}
}

遞歸算法解決問題的特點
(1) 遞歸就是在過程或函數里調用自身。   
(2) 在使用遞歸策略時,必須有一個明確的遞歸結束條件,稱為遞歸出口。   
(3) 遞歸算法解題通常顯得很簡潔,但遞歸算法解題的運行效率較低。所以一般不提倡用遞歸算法設計程序。   
(4) 在遞歸調用的過程當中系統(tǒng)為每一層的返回點、局部量等開辟了棧來存儲。遞歸次數過多容易造成棧溢出等。所以一般不提倡用遞歸算法設計程序。

相關文章

最新評論