码迷,mamicode.com
首页 > 其他好文 > 详细

链表(4)----反转链表

时间:2014-12-11 19:17:44      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:单链表

1、链表结构定义


typedef struct ListElement_t_ {
    void *data;
    struct ListElement_t_ *next;
} ListElement_t;

typedef struct List_t_{
    int size;
    int capacity;
    ListElement_t *head;
    ListElement_t *tail;
} List_t;



2、反转链表实现

int  ReverseList( List_t *list)
{
    if( list == NULL )
        return INPUT_ERROR;
    if( list->head == NULL )
        return INPUT_ERROR;    
    if( list->head->next == NULL )
        return 0;

    ListElement_t *pCurrent = list->head;
    ListElement_t *pNext = pCurrent->next;
    pCurrent->next = NULL;
    list->tail = pCurrent;
    while( pNext != NULL ){
        ListElement_t *pTmp = pNext->next;
        pNext->next = pCurrent;
        pCurrent = pNext;
        pNext = pTmp;
    }
    list->head = pCurrent;
    return 0;
}


链表(4)----反转链表

标签:单链表

原文地址:http://blog.csdn.net/beitiandijun/article/details/41869439

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!