I have read this. My question is not about how to write enumerator, but how to do this for TREEs
Thanks 发送自魅族MX -------- 原始邮件 -------- 发件人:Mattias Gaertner <nc-gaert...@netcologne.de> 时间:3月21日 15:39 周四 收件人:fpc-pascal@lists.freepascal.org 主题:Re: [fpc-pascal] How To write an enumerator for trees >On Thu, 21 Mar 2013 11:11:49 +0800 >Xiangrong Fang <xrf...@gmail.com> wrote: > >> Hi, >> >> I would like to add enumerator support for my TTreap implementation ( >> https://github.com/xrfang/fpcollection/blob/master/src/units/treap.pas). >> >> The tree nodes are defined as: >> >> PNode = ^TNode; >> TNode = record >> Count: Cardinal; >> Key: TKey; >> Value: TValue; >> Priority: Cardinal; >> Left, Right: PNode; >> end; >> >> Now I don't know how to write an enumerator for it. I would like to >> traverse the tree "In-Order", either from the left-most node or from the >> right-most node, so that I can output nodes like: >> >> for n in MyTreap do WriteLn(n^.Key); > >See here: > >http://wiki.freepascal.org/for-in_loop#Declaring_enumerators > >Mattias >_______________________________________________ >fpc-pascal maillist - fpc-pascal@lists.freepascal.org >http://lists.freepascal.org/mailman/listinfo/fpc-pascal
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal