• <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 - 297,  comments - 15,  trackbacks - 0
            #include <iostream>

            using namespace std;

            //single link
            struct slink_t{
                struct slink_t* next;
                int data;
                slink_t(): next(0), data(0){
                }
                slink_t(slink_t* p, int d): next(p), data(d){
                }
            };

            /*output data of single link */
            ostream& operator<< (ostream& os, const struct slink_t* p)
            {
                cout << "Output : ";
                while (p && cout << p->data << ' ')
                    p = p->next;
                return os;
            }

            /* reverse the single link */
            struct slink_t* slink_reverse(struct slink_t* p)
            {
                struct slink_t* t = NULL, *tp = NULL;
                while (p)
                {
                    tp = t;
                    t = p;
                    p = p->next;
                    t->next = tp;
                }
                return t;
            }

            //double link
            struct dlink_t{
                struct dlink_t* next;
                struct dlink_t* prev;
                int data;
                dlink_t(): next(0), prev(0), data(0){
                }
                dlink_t(dlink_t* n, dlink_t* p, int d): next(n), prev(p), data(d){
                }
            };

            /* output data of double link */
            ostream& operator<< (ostream& os, const struct dlink_t* p)
            {
                cout << "Output : ";
                while (p && cout << p->data << ' ')
                    p = p->next;
                return os;
            }

            /* reverse the double link */
            struct dlink_t* dlink_reverse(struct dlink_t* p)
            {
                struct dlink_t* t = NULL;
                while (p)
                {
                    t = p;
                    p = p->next;
                    t->next = t->prev;
                    t->prev = p;
                }
                return t;
            }

            #define TEST__

            #ifdef TEST__
            /* test */
            int main()
            {
                struct slink_t* sl = new slink_t(new slink_t(new slink_t(new slink_t(new slink_t(new slink_t(NULL, 6), 5), 4), 3), 2), 1);
                cout << sl << endl;
                sl = slink_reverse(sl);
                cout << sl << endl;
                struct dlink_t* dl = NULL;
                struct dlink_t* h = new dlink_t(NULL, dl, 1);
                dl = h;
                for (int i = 2; i < 10; i++)
                {
                    struct dlink_t* t = new dlink_t(NULL, dl, i);
                    dl->next = t;
                    dl = t;
            //        dl->prev->next = dl;
                }
                cout << h << endl;
                h = dlink_reverse(h);
                cout << h << endl;
                cout << "Hello world" << endl;
                return 0;
            }
            #endif
            轉自:
            http://blog.chinaunix.net/u3/101003/showart.php?id=2095827
            posted on 2009-11-21 18:41 chatler 閱讀(341) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm
            <2010年3月>
            28123456
            78910111213
            14151617181920
            21222324252627
            28293031123
            45678910

            常用鏈接

            留言簿(10)

            隨筆分類(307)

            隨筆檔案(297)

            algorithm

            Books_Free_Online

            C++

            database

            Linux

            Linux shell

            linux socket

            misce

            • cloudward
            • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

            network

            OSS

            • Google Android
            • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
            • os161 file list

            overall

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            欧美一区二区三区久久综| 国内精品久久久久久久涩爱| 亚洲欧洲精品成人久久曰影片 | 无码人妻精品一区二区三区久久久 | 久久亚洲AV无码西西人体| 久久毛片一区二区| 少妇久久久久久被弄高潮| 91久久成人免费| 久久久久久久免费视频| 国产人久久人人人人爽| 久久久久综合国产欧美一区二区| 久久人人添人人爽添人人片牛牛| 久久久久久久99精品免费观看| 久久精品国产亚洲av瑜伽| 久久婷婷五月综合色奶水99啪| 国产精品亚洲综合专区片高清久久久 | 久久这里只精品国产99热| 精品久久久一二三区| 久久国产精品-久久精品| 伊人久久大香线蕉精品不卡 | 成人久久综合网| 开心久久婷婷综合中文字幕| 国产亚洲色婷婷久久99精品| 综合久久一区二区三区 | 中文字幕人妻色偷偷久久| 国产精品久久久99| 国产精品久久亚洲不卡动漫| 久久婷婷五月综合色奶水99啪| 精品久久久久久无码免费| 精品九九久久国内精品| 日韩精品无码久久久久久| 伊人久久成人成综合网222| 久久99精品久久久久久齐齐| 久久国产精品-国产精品| 狠狠色丁香婷婷综合久久来| 久久大香香蕉国产| 亚洲人成网亚洲欧洲无码久久| 久久久这里有精品| 精品国产99久久久久久麻豆| 国产精品中文久久久久久久| 久久人人爽人人爽人人片av麻烦|