作者hannibal0416 (han)
看板Prob_Solve
標題Re: [問題] 關於演算的觀念
時間Mon Aug 17 00:45:23 2009
演算法的定義:是一組有限的指令,根據這些指令可以完成某一特定的工作,所有演算法
必須滿足下列條件:
1-輸入:須有0~多個輸入資料。
2-輸出:至少產生一個以上的輸出結果。
3-有限性:若追蹤演算法,無論何種狀況,經過有限步驟後,必會終止,不能有無窮迴圈
4-有效性:每個指令不僅要具備確定性,且理論上必須簡單到使人只須在紙上作業即可
RUN該演算法。
5-確定性:每個指令均須清楚明確,不可模稜兩可。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.57.134.89
1F:推 march20:請問這定義出處為何? 08/17 08:54
2F:推 flamerecca:knuth的聖經本"the art of computer programming" 08/17 11:24
3F:推 march20:口也, 要注意 knuth 在說這段話時, 並沒用 "必需" 這樣的 08/17 18:47
4F:推 march20:強烈字眼 (喵的, 我在說廢話, 請省略 XD) 08/17 18:52
5F:→ hannibal0416:呃,沒"必需"@@我抄的筆記有@@,可能抄錯了@@ 08/18 13:10
6F:推 march20:你應該是沒抄錯, 原文似乎是widely accepted requirements 08/18 23:41
7F:推 march20:真的要挑骨頭, 只能說這個定義不夠嚴格 XD 08/18 23:42
8F:→ yauhh:我覺得樓上你搞錯了,這本來就不需要定義嚴格. 08/19 09:25
9F:→ yauhh:吃飽飯需要定義嚴格嗎? 賺到更多錢需要定義嚴格嗎? 08/19 09:26
10F:→ yauhh:就算是定義寬鬆,也不代表你有直接不認同它的理由 08/19 09:26
11F:推 ledia:樓上怎麼還是這麼嗆呀, march20 有不認同什麼嗎? 是你搞錯吧 08/19 15:13
12F:→ yauhh:我只覺得,什麼事情都要來個嚴格定義,很無聊,很學究. 08/19 18:24
13F:→ yauhh:走出到社會中,誰理你那一套所謂的嚴謹規則. 08/19 18:25
14F:→ yauhh:就算停在學術界,學界的人也沒這樣畸型地解讀那些定義. 08/19 18:26
15F:→ ledia:數學就是需要嚴格定義的一門學科, 也許您接觸不深, 但並非 08/19 20:31
16F:→ ledia:看不見就不存在, 演算法很多地方跟數學是密切相關的, 有人 08/19 20:31
17F:→ ledia:關心他是否有嚴格定義, 其實並不是很意外的事情 08/19 20:32
18F:→ ledia:像是演算法分析, 就連在什麼 memory model 上都要定義得毫 08/19 20:32
19F:→ ledia:無籠統, 否則就完全沒有比較的基準了 08/19 20:33
20F:→ ledia:更何況 march20 加了句 "真的要挑骨頭", 代表他並沒有要深 08/19 20:34
21F:→ ledia:究下去的意思, 不知道你從何得出他對簡單的定義不認同的結論 08/19 20:34
22F:推 march20:是的, 所以我一開始推文推到一半就發現自己在胡言亂語了 08/19 20:37
23F:推 march20:所以才請大家別理我 XD 08/19 20:37
24F:推 march20:造成大家誤會, 很顯然是我的問題, 對不起 XD 08/19 20:43
25F:推 march20:(然後謝謝 ledia 幫我辯白 XD) 08/19 21:07