[公告] AdtTest::printBackward() function 修正
上面有同學說到, 原先 printBackward() 的寫法:
AdtType<AdtTestObj>::iterator li = _container.end(); --li;
#ifdef RANDOM_ACCESS
for (int i = idx; i >= 0; --i)
#else // DList
while (li != _container.end())
#endif // RANDOM_ACCESS
printData(idx--, li--, r);
對 bst 不能 work, 因為 bst 的 begin() 跟 end() 並沒有必要連在一起.
所以, 有做到 bst 的同學, 請做以下修正:
AdtType<AdtTestObj>::iterator li = _container.end(); --li;
#ifdef RANDOM_ACCESS
for (int i = idx; i >= 0; --i)
printData(idx--, li--, r);
#else // for DList and BST
do {
printData(idx, li, r);
--idx;
} while (li-- != _container.begin());
#endif // RANDOM_ACCESS
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.121.129.110
推
05/15 21:56, , 1F
05/15 21:56, 1F
→
05/15 22:00, , 2F
05/15 22:00, 2F