我真的需要一個建議。我有一個遞歸調用數量很大的函數。其實我需要它。算法是正確的,它在C中工作,但是在lisp中,由於堆棧溢出,存在問題。我應該怎麼做才能解決它?我怎樣才能改變算法,以便能夠在lisp中工作?Lisp堆棧溢出綁定
-2
A
回答
2
你有三個選擇:
- 重寫算法是尾遞歸或等價地,反覆
- 更改算法一起
- 增加Lisp的堆棧大小
+0
如何做第三個選項?在Windows操作系統上可以嗎? – user216799 2013-05-12 20:03:11
+0
您使用的是什麼lisp?什麼是可用的命令參數?文件說什麼? – GoZoner 2013-05-12 23:07:33
相關問題
- 1. Lisp堆棧溢出遞歸函數
- 2. Lisp編程錯誤(堆棧溢出(深))
- 3. 綁定DataGrid時堆棧溢出WPF
- 4. 堆棧溢出堆棧溢出
- 5. 堆棧溢出
- 6. 堆棧溢出C++
- 7. C#堆棧溢出
- 8. Malloc堆棧溢出
- 9. 堆棧溢出C++
- 10. LINQ2SQL堆棧溢出
- 11. 堆棧溢出ToArray()
- 12. C++堆棧溢出
- 13. 堆棧溢出:: regex_replace
- 14. .NET堆棧溢出?
- 15. MPMoviePlayerController堆棧溢出
- 16. ViewDragHelper堆棧溢出
- 17. Lua堆棧溢出
- 18. GinMapProvider堆棧溢出
- 19. Threading.Timer堆棧溢出
- 20. 堆棧溢出調用堆棧#timememoryfunctionlocation 10.0000143728
- 21. 堆棧搜索導致堆棧溢出
- 22. Lisp中遞歸函數調用的堆棧溢出
- 23. 調用`(GET-線程綁定)`導致堆棧溢出
- 24. java.util.Properties.getProperty的堆棧溢出
- 25. freertos中的堆棧溢出
- 26. OpenID像堆棧溢出
- 27. 堆棧溢出(關於「evhttp_uri_parse」)
- 28. 堆棧緩衝區溢出
- 29. QuickSort能否堆棧溢出?
- 30. compareTo導致堆棧溢出
這真正太寬泛的問題才能給出有意義的答案。將遞歸算法更改爲迭代算法或尾遞歸算法,這是我們可以說的最多的。 – Cairnarvon 2013-05-12 12:33:50
你在編譯函數嗎?如果是這樣的話:使用'optimize'的什麼設置? – 2013-05-12 18:34:44
我在Lisp的第42行看到,你偏離了C所做的事情;你改變了一個關鍵的檢查,發生失控遞歸。沒有等待,它是第47行!我的水晶球需要一個新的偏轉線圈; 2的開始看起來像7。 – Kaz 2013-05-18 05:40:49