作者converse2006 (宫城)
看板Grad-ProbAsk
标题Re: [理工] [资结]-circular queue
时间Fri Dec 18 00:40:38 2009
※ 引述《polomoss (小泽)》之铭言:
: 请问一下下面这段程式码
: 可以解释一下吗??
: for(;k>0; k--)
: queue((front+k) % MaxSize) = queue[(front+k-1) % MaxSize];
: front = (front+1)%MaxSize;
: x=queue[front];
: return &x;
: 目的是要删除queue第k项,然後把其他的位置放回原来位址
: 有点看不懂,谢谢
我不会画图 希望你能看懂我在说甚麽XD
前两行是 他把k的那格放k-1的那格资料 所以整个阵列平行向前移动一格
所以第三行是在说 把头改成现在第一个在的位置 也就是平移过一格的位置
下一行再把头指给一个变数
最後回传头
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.183.45
1F:推 polomoss:可是这样他回传是front+1 非 第k项 12/18 10:09
2F:→ polomoss:懂了...谢谢 12/18 10:10