說明
1、一般遞歸調用可以處理的算法,也通過循環去解決常需要額外的低效處理 。
2、 現在的編譯器在優化后,對于多次調用的方法處理會有非常好的效率優化,效率未必低于循環。
循環
優點: 結構簡單
缺點: 并不能解決所有的問題。 有的問題適合使用遞歸而不是循環,如果使用循環并不困難的話,最好使用循環。
遞歸
優點: 代碼簡潔、清晰,并且容易驗證正確性
缺點: 它的運行需要較多次數的方法調用,如果調用層數比較深,需要增加額外的堆棧處理,比如參數傳遞需要壓棧等操作,會對執行效率有一定影響。 但是,對于某些問題,如果不使用遞歸,那將是極端難看的代碼。
以上就是java循環和遞歸的區別,希望對大家有所幫助。更多關于“java培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學,課程大綱緊跟企業需求,更科學更嚴謹,每年培養泛IT人才近2萬人。不論你是零基礎還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。