亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

最后這個不是尾遞歸吧?

怎么寫成尾遞歸呢?

正在回答

3 回答

def?walk2(list2:List[Int],string:String):String={
????println(s"list2=?${list2},string=${string}")
?????if(list2.isEmpty)?string+"啊哈哈,變成空了吧"
?????else
????walk2(?list2.tail,string?+?list2.head?+?"JJ")
}
walk2(a,"")


0 回復 有任何疑惑可以回復我~

就是尾遞歸啊,你第一次執行else后變成了1 List(2,3,4)(中間有空格),然后你a判斷又不是空集合,就一直執行了,知道a集合變為空,因為變為空,才沒有尾部跟頭部概念,才停止運行

0 回復 有任何疑惑可以回復我~

不是尾遞歸,沒有加@annotation.tailrec編譯器不會按尾遞歸處理

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

最后這個不是尾遞歸吧?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號