0
A
回答
2
嚴重的是,lutzlover。你需要閱讀一本教科書或SML的一些介紹。例如,請參閱SML/NJ Literature頁面。
基本上你有兩種解決這個問題的方法。給定函數insertnth(xs, pos, n)
,那麼醜陋的非功能性方式是在位置pos
處拆分列表,然後返回left @ n :: right
,其中left
和right
是拆分的左側和右側部分。或者更具功能性的方法,用遞歸函數逐個遍歷列表xs
,每次遞減pos
變量,然後當您到達位置1時,然後返回n
附加到剩餘列表,以停止遞歸。
相關問題
- 1. SML - 列表和遞歸
- 2. SML:非遞歸過濾列表
- 3. 將函數傳遞給函數SML
- 4. 遞歸jQuery函數瀏覽列表
- 5. 遞歸函數在陣列
- 6. 遞歸函數得到一個參數
- 7. 記錄列表上的SML函數
- 8. Scala爲SML解析相互遞歸函數
- 9. 瞭解總和函數調用自己(遞歸?) - SML
- 10. 遞歸函數
- 11. 遞歸函數
- 12. 函數遞歸
- 13. 遞歸函數
- 14. 遞歸函數
- 15. 遞歸函數
- 16. 遞歸函數
- 17. 遞歸函數
- 18. 遞歸函數
- 19. 遞歸函數
- 20. 尾遞歸和迭代SML
- 21. 在SML中連接遞歸
- 22. 在遞歸函數中覆蓋函數參數?
- 23. 尾遞歸函數
- 24. 遞歸函數C++
- 25. 遞歸函數Python
- 26. 遞歸strcpy函數
- 27. C++遞歸函數
- 28. JQuery遞歸函數?
- 29. jquery遞歸函數
- 30. Ç遞歸函數
我有。 fun insertnth(h :: t,1)= t | insertnth(h :: t,n)= h :: insertnth(t,n-1);是這樣嗎? – Knaas
那麼您需要至少三個參數,就像您在原始問題中所做的那樣,並且正如我所做的那樣:'insertnth(xs,pos,n)'。除此之外,你幾乎在那裏 –
:S我沒有完全做到 – Knaas