• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 183,  comments - 10,  trackbacks - 0

            單鏈表可以順序非遞歸的遍歷訪問。同時,單鏈表具有遞歸的性質(zhì),可以遞歸訪問。

            遞歸訪問有兩種方式,一是首先訪問當前節(jié)點,再遞歸訪問剩下的節(jié)點。

            二是首先遞歸訪問剩下的節(jié)點,在訪問當前節(jié)點。這種方式的遞歸訪問可以實現(xiàn)單鏈表的逆序訪問。

            來自于《算法:C 語言實現(xiàn)》

            (CPPBLOG 刪除后為什么不能再提交,錯誤:不能重復(fù)提交!可是已經(jīng)刪除了啊)
             1 #include <iostream>
             2 using namespace std;
             3 
             4 struct node
             5 {
             6     int item;
             7     node* next;
             8 };
             9 
            10 void insert(int i, node* h)
            11 {
            12     node* p = new node;
            13     p->item = i;
            14     p->next = h->next;
            15     h->next = p;
            16 }
            17 
            18 void traverse(node* h)
            19 {
            20     h = h->next;
            21     while (h != 0)
            22     {
            23         cout << h->item << ' ';
            24         h = h->next;
            25     }
            26     cout << endl;
            27 }
            28 
            29 void traverseRecurse(node* h)
            30 {
            31     if (h->next == 0)
            32     {
            33         cout << endl;
            34         return;
            35     }
            36     cout << h->next->item << ' ';
            37     traverseRecurse(h->next);
            38 }
            39 
            40 void traverseRecurseIvertedSequence(node* h)
            41 {
            42     if (h->next == 0)
            43     {
            44         cout << endl;
            45         return;
            46     }
            47     traverseRecurseIvertedSequence(h->next);
            48     cout << h->next->item << ' ';
            49 }
            50 
            51 void clear(node* h)
            52 {
            53     node* p = h->next, *q;
            54     while (p != 0)
            55     {
            56         q = p->next;
            57         delete p;
            58         p = q;
            59     }
            60 }
            61 
            62 int main()
            63 {
            64     node* h = new node;
            65     h->next = 0;
            66     for (int i = 0; i < 10++i)
            67     {
            68         insert(i, h);
            69     }
            70     traverse(h);
            71     traverseRecurse(h);
            72     traverseRecurseIvertedSequence(h);
            73     clear(h);
            74     delete h;
            75     return 0;
            76 }

            posted on 2011-05-18 19:13 unixfy 閱讀(434) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            一级做a爱片久久毛片| 国产一区二区精品久久岳| 久久天天躁狠狠躁夜夜躁2014| 色99久久久久高潮综合影院| 久久精品国产色蜜蜜麻豆| 精品久久久久久| 7777久久久国产精品消防器材| 久久香蕉综合色一综合色88| 亚洲欧美日韩精品久久亚洲区| 2022年国产精品久久久久| 无码任你躁久久久久久久| 久久精品一区二区三区不卡| 狠狠综合久久AV一区二区三区| 国内精品久久久久久久久| 色综合久久久久久久久五月| 国产激情久久久久影院| 久久久噜噜噜www成人网| 亚洲国产天堂久久综合| Xx性欧美肥妇精品久久久久久 | 国产成人精品久久免费动漫| 久久99亚洲综合精品首页| 久久久久亚洲av无码专区导航 | 久久精品国产网红主播| 亚洲欧洲中文日韩久久AV乱码| 久久亚洲国产精品一区二区| 无码超乳爆乳中文字幕久久| 久久99这里只有精品国产| 久久最新免费视频| 久久九色综合九色99伊人| 日本久久久精品中文字幕| 国产精品久久亚洲不卡动漫| 精品熟女少妇a∨免费久久| 久久精品麻豆日日躁夜夜躁| 亚洲成色www久久网站夜月| 欧美黑人激情性久久| 久久青青草视频| 久久精品国产亚洲AV影院| 久久亚洲国产成人影院| 久久人人爽人人爽人人片av麻烦| 色婷婷狠狠久久综合五月| 久久热这里只有精品在线观看|