承接上篇单链表的增删改查实现,这里我们讲讲单链表的倒置。
不理解什么是单链表的倒置可以看下图,就是单链表的逆序输出
核心思想代码
typedef struct listNode
{
int data; //数据域
struct listNode *next; //指针域
}linkList;
void reverseLinkList(linkList *tempList)
{
linkList *newList = tempList->next,*node;
tempList->next = NULL;
while(newList)
{
node = newList;
newList = newList->next;
node->next = tempList->next;
tempList->next = node;
}
}
核心思想:头插法创建单链表(如果这个会的话,倒置很简单)
过程图(承接上面代码)⊙﹏⊙字好丑