Re: [問卦] 寫程式會用遞迴 大概是什麼程度?
※ 引述《jason851124 (YeeeEX)》之銘言:
: 乳提
: 在寫code的時候
: 常用迴圈來設條件 讓程式來達成想要的目的
: 如for, while, do while
: 但有另一種比較進階的概念叫遞迴
: 就如同全面啟動一樣 一層一層的進入夢靨
: 一層一層的呼叫自身函數 最後在慢慢逃脫
: 這種架構在撰寫的時候 邏輯要更清晰
: 想問可以習慣寫遞迴的人
: 大概是什麼等級阿? 有掛?
以前在C語言板看過一個簽名檔
一個在程式語言界有名的人說了一句話:「遞迴只在天上有,凡人應該用迴圈」
可能對方是名人,大家都奉為圭臬
我一點都不同意
舉個簡單例子好了
一個陣列a[]取任意3個,用迴圈怎麼寫?
for(int i=0;i<a.size();i++)
{
for(j=i+1;j<a.size();j++)
{
for(k=j+1;k<a.size();k++)
{
//.....
//以下做特殊處理
}
}
}
那如果取20個咧,不就寫到昏倒
以前在冼鏡光的名題精選百則<使用C語言>有提到一個方法,不用遞迴,也不用上述作法列出K個元素的子集
可是非常難懂,是60年代的計算機科學家就發明出來的方法
因為非常難懂(至少對我),一陣子沒讀又忘了
可是這種陣列a[]取任意n個,用遞迴來做非常好寫
我都這樣寫
void recur(int tl, int level, int start)
{
if(level==0)
{
//以下做特殊處理
// ......
return;
}
for(int i=start;i<a[].size();i++)
{
recur(tl,level-1,i+1);
}
}
在最後一層幹掉就好
我在ProjectEuler很常用到這種遞迴
--
https://projecteuler.net/recent 歐拉編程競賽
https://projecteuler.net/problem=829 最新一題是個簡單題
--
寫成python好嗎
用鉤吐就好了
這裡是八
那是你的loop寫錯吧 取n個n是變數當然不是一
層層寫啊 當然recursive的code總是比較精簡
這根本廢話 以DP來說大多數情況top down都比
bottom up容易寫啊 但遞迴現實中就是要考慮
stack overflow阿...像Python我印象中>999就
你太爛吧,我兩層就能選n個了
會error了(層數應該可以改 但就是有這限制)
我問chat就好。你下去吧
情人節看八卦討論程式
你為了j=i+1 k=i+2多開兩層for幹嘛
k=j+1 是你眼睛沒看清楚
都隨意了一開始直接挑出20個index不就好了
這應該叫列出K個元素的所有子集
這是個程式語言中有名的基本訓練
一開始用"隨意" 讓你誤會了 不好意思
亂數取n個 index 就好了啊 你是在寫三小
我也誤會了==收回你太爛,抱歉,我爛
坐等stack爆掉
遞迴也不一定都會 stack overflow,可
以用 tail recursion
糟糕 完全看不懂
不會用array裡裝index喔 笑死
太深stack爆給你看
嗚嗚 第一行就死腦筋了
看不懂取任意三個是啥,你這迴圈跑的
明明就是a.Length個元素的集合取所有
可能的子集合
43
[問卦] 資料結構在業界484用不到?如題 遇到的同事跟前人留下來的程式 全都用array存資料 根本沒人在用Link list 跟stack 跟遞迴 還是其他間公司有沒有人在用?9
[心得] 圖解演算法 生活中的Stack運用【圖解演算法教學】【Stack】 吃洋芋片也能學資料結構!? Σ(゚д゚) 封面圖: 架構圖: 影片連結: 牛頓被蘋果砸到領悟萬有引力,我們吃洋芋片也能悟出 Stack 資料結構的道理。10
[問卦] 要怎摸知道自己對寫程式有沒有天分啊?As title 常常聽很多人說 寫程式就像畫畫一樣 要有天分 那麼問題就是要怎麼知道7
[問卦] 演算法DFS看得懂 但寫不出來 問題在哪?最近開始Leetcode 發現字串處理和系統設計的的題目較DFS容易寫 DFS的題目看解答看得懂 但是要自己從無到有寫一次 包括邊界條件和遞迴判斷式怎麼寫 卻寫不出來8
[問卦] 前端是不是用不到演算法?如題 遇到的同事跟前人留下來的程式 全都用陣列存資料 根本沒人在用串列跟堆疊跟遞迴 還是其他間公司有沒有人在用演算法?8
Re: [問卦] 迴圈是不是對新手不友善啊?迴圈本身很簡單啊 把1到N印出來,每一行一個數字 只要你可以寫出: for(int i=1;i<=N;i++) cout << i << endl; 好你會迴圈了2
[考試] 計算機概論程式設計一問某計概考古題看到的 第37題,求VB程式T和S結果,如下圖 T跟S不都是T=T+2,S=S+2 兩個都在做遞迴,不是應該最後數值會一樣嗎?2
Re: [請益] 南部新手轉換跑道家教多年,非本科初學者建議以下幾點要弄清楚 1. 語言只是解決問題的工具,要學習的針對要解決的事情和問題,提出解決方案和優劣 比較。 2. 在不同領域的公司裡面擔任什麼角色 傳產 科技業 金融業 etc1
[廢文] 遞迴--
爆
[爆卦] 地震爆
[地震] 地震爆
[問卦] 欸欸台灣高鐵的選址也太失敗了吧爆
[爆卦] 【反霸凌、護勞權】大遊行 12/7 勞動部爆
[問卦] 為什麼這次公務員輕生事件會燒起來90
Re: [新聞] 獨家》新任勞動部長洪申翰出任 王義川遞爆
[問卦] 雲端發票抽獎就這樣定案了?54
[問卦] 明晚的金馬獎會創最低收視嗎48
Re: [新聞] 獨家》新任勞動部長洪申翰出任 王義川遞51
[爆卦] 泣台想抹藍謝宜容 黃益中爆:她藍綠通吃45
[問卦] 全女性公司是不是就不會有霸凌了53
[爆卦] 地震爆
[問卦] 科技業怎麼都沒傳出霸凌事件?43
[問卦] 不含咖啡因飲品推薦?38
[地震] 第 498 號顯著有感地震報告31
[爆卦] 5278又被Ban啦!!32
[問卦] 為啥台南Josh還蠻容易吸仇恨的32
[地震] 又來了34
[地震] 是要幾次27
[問卦] 綠色是不是下賤的顏色???26
[問卦] 台灣棒球為什麼今年能大勝美國?24
Re: [新聞] 獨家》新任勞動部長洪申翰出任 王義川遞13
[問卦] 中國人沒發現自己落後的是思想嗎?29
[問卦] 生日一個人可以幹嘛29
[問卦] 做錯事死不承認會怎樣?27
[問卦]民眾自主發起 反霸凌遊行需要各位鄉民爆
[問卦] 4X貓也霸凌別人到自殺為什麼沒事23
[問卦] 韓國人真的很羨慕台灣的大巨蛋嗎?20
[問卦] 今年地震多是有妖孽嗎?14
[問卦] 不爽不要做就好了 幹嘛輕生?