首页 > 其他 > 详细

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

时间:2014-12-11 19:14:33      阅读:261      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!