作者ledia (下班後才下棋)
看板C_and_CPP
标题Re: [问题] 有关 MERGE SORT 的问题
时间Fri Feb 27 23:42:08 2009
※ 引述《s961639 (Nobodyknows)》之铭言:
: (非C相关问题 但找不到演算法相关版 故在求助个位板大)
: 这是MIT 出版 演算法概论中
: 合并排序的主程式 P32
: merge-sort (A,p,r)
: 1 if p < r
: 2 then q <- (p + r)/2
: 3 merge-sort (A,p,q)
: 4 merge-sort (A,q+1,r)
: 5 merge (A,p,q,r)
: 若今天index 为 1~8
: 小弟的问题在於
: 第一个merge-sort(line 3) 不断的呼叫自己 直到 p=1 q=1
: 这样 判断式不成立 程式如何继续执行?
: q<-(p+r)/2 之後
: 3 4 5 行是如何连续呼叫? 步骤大概是如何进行?
: 如果有大大 能告简单说明
: 我真的事非常感激
自己写个程式 dump 一次
不然 1-8 试着用手写也很快呀
上来这边问, 等的时间早就做完、搞懂了
相信我, 自己弄懂比较快, 也记得比较久
merge-sort(A,1,8)
merge-sort(A,1,4)
merge-sort(A,1,2)
merge-sort(A,1,1)
merge-sort(A,2,2)
merge(A,1,2,2)
merge-sort(A,3,4)
merge-sort(A,3,3)
merge-sort(A,4,4)
merge(A,3,4,4)
merge(A,1,2,4)
merge-sort(A,5,8)
merge-sort(A,5,6)
merge-sort(A,5,5)
merge-sort(A,6,6)
merge(A,5,6,6)
merge-sort(A,7,8)
merge-sort(A,7,7)
merge-sort(A,8,8)
merge(A,7,8,8)
merge(A,1,2,4)
merge(A,1,4,8)
--
有时候,遗忘,是令人快乐的。什麽时候?当然是有人伤了你的心的时候。
存心伤你的那个人,固然是故意和你过不去,但是被伤了心而耿耿於怀的你
,却是和自己过不去了。所以,记性不好的人,通常会是比较快乐的人,也
是比较不容易被击倒的人。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.30.49