ivaneeo's blog

          自由的力量,自由的生活。

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
          關于n!求解:
          1.線性遞歸

          ??? ch1-Z-G-7.gif
          (define?(factorial?n)
          ??(if?(=?n?1)
          ??????1
          ??????(*?n?(factorial?(-?n?1)))))
          如圖所示的線性的膨脹再線性的縮減,就為線性遞歸.

          2.迭代
          ??? ch1-Z-G-10.gif
          (define?(factorial?n)
          ??(fact-iter?1?1?n))

          (define?(fact-iter?product?counter?max-count)
          ??(if?(>?counter?max-count)
          ??????product
          ??????(fact-iter?(*?counter?product)
          ?????????????????(+?counter?1)
          ?????????????????max-count)))

          注:試驗(factorial 10000),遞歸堆棧溢出,而迭代則可以運行.
          posted on 2006-07-30 11:37 ivaneeo 閱讀(568) 評論(0)  編輯  收藏 所屬分類: scheme-語言之母
          主站蜘蛛池模板: 金寨县| 安平县| 乐山市| 浪卡子县| 海丰县| 阜南县| 苍梧县| 通化市| 潼关县| 阿拉善盟| 叙永县| 潮安县| 昔阳县| 壶关县| 广汉市| 宁远县| 河南省| 宝应县| 涞水县| 商洛市| 南雄市| 榆树市| 通渭县| 长泰县| 娄烦县| 桂平市| 股票| 南漳县| 子长县| 稷山县| 新乡市| 隆子县| 诏安县| 麻栗坡县| 乌兰浩特市| 绥化市| 桐柏县| 封开县| 吴川市| 临清市| 聂拉木县|