• <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>
            隨筆-80  評論-24  文章-0  trackbacks-0
            比如對于鏈表a->b->c->d->g;
            交換之后應該是b->a->d->c->g;
            對于這種題目應該問清楚面試官可否僅進行節(jié)點值的交換?如果面試官說可以那就非常簡單了,否則就得進行鏈表指針的變換,不過一般面試官考察此題的目的都是為了考察指針操作,所以最好問清楚~
            下面是程序:

             1 #include <cstdio>
             2 #include <string.h>
             3 
             4 typedef struct list {
             5     int data;
             6     struct list *next;
             7 } list;
             8 
             9 list *list_swap(list *head) {
            10     list *p = head;
            11     if (!p) return head;
            12     list *q = p->next;
            13     if (!q) return head;
            14     list *pre = NULL;
            15     while (p && q) {
            16         if (head == p) head = q;
            17         if (pre != NULL) {
            18             pre->next = q;
            19         }
            20         pre = p;
            21         p->next = q->next;
            22         q->next = p;
            23         p = p->next;
            24         if (!p) return head;
            25         q = p->next;
            26     }
            27 
            28     return head;
            29 }
            30 
            31 list *list_value_swap(list *head) {
            32     list *p = head;
            33     if (!p) return head;
            34     list *q = p->next;
            35     if (!q) return head;
            36     while (p && q) {
            37         list temp;
            38         temp.data = p->data;
            39         p->data = q->data;
            40         q->data = temp.data;
            41         p = q->next;
            42         if (!p) return head;
            43         q = p->next;
            44     }
            45 
            46     return head;
            47 }
            48 
            49 int main() {
            50     list *head = new list;
            51     head->data = 1;
            52     head->next = new list;
            53     head->next->data = 2;
            54     head->next->next = new list;
            55     head->next->next->data = 3;
            56     head->next->next->next = new list;
            57     head->next->next->next->data = 4;
            58     head->next->next->next->next = new list;
            59     head->next->next->next->next->data = 5;
            60     head->next->next->next->next->next = NULL;
            61     head = list_swap(head);
            62     while (head) {
            63         printf("%d ", head->data);
            64         head = head->next;
            65     }
            66     printf("\n");
            67     return 0;
            68 }
            69 
            posted on 2012-04-21 10:57 myjfm 閱讀(1388) 評論(0)  編輯 收藏 引用 所屬分類: 筆試+面試總結
            99久久精品日本一区二区免费| 久久人人爽人人爽人人片AV麻豆| 亚洲性久久久影院| 国产69精品久久久久APP下载| 久久精品国产亚洲av麻豆图片| 日本人妻丰满熟妇久久久久久| 色综合久久中文字幕无码| 国产国产成人精品久久| 亚洲精品国精品久久99热| 色婷婷综合久久久久中文一区二区| 99久久国产综合精品麻豆| 欧美日韩精品久久久免费观看| 一本色道久久88—综合亚洲精品| 国产成人精品久久一区二区三区| 久久国产成人午夜aⅴ影院| 亚洲精品无码久久一线| 久久精品国产精品亚洲人人| 伊人久久综合无码成人网| 久久se精品一区精品二区国产| 人妻无码久久一区二区三区免费| 久久精品国产一区二区| 久久精品亚洲日本波多野结衣 | 久久久久久国产精品美女| 女人高潮久久久叫人喷水| 久久亚洲国产午夜精品理论片| 国产精品久久婷婷六月丁香| 7国产欧美日韩综合天堂中文久久久久| 久久中文字幕人妻熟av女| 精品久久久久久久久久中文字幕| 国产V亚洲V天堂无码久久久| 亚洲国产精品久久久天堂| 日韩久久无码免费毛片软件| 伊人丁香狠狠色综合久久| 东京热TOKYO综合久久精品| 婷婷伊人久久大香线蕉AV | 久久精品中文字幕有码| 国产精品18久久久久久vr| 国产亚洲精久久久久久无码| 人妻精品久久久久中文字幕一冢本| 亚洲午夜久久久| 久久久无码精品亚洲日韩蜜臀浪潮|