一、单链表反转
链表反转,就是将链表从1->2->3->4->5这种形式反转成5->4->3->2->1这种形式,目前能想到的有两种实现方式,对于什么是链表,链表的一些性质就不多说了,直接说两种实现方式,实现方式如下:
1,用头节点插入法新建链表。反转链表,有创建链表的两种方式(头节点插入法,尾节点插入法)知道,头结点插入法形成的链表是和输入顺序相反的,尾节点插入法形成的链表是和输入顺序相同的,所以其中一种方法是,遍历原链表,然后用原链表的输出元素顺序用头结点插入法新建链表,这样新建的链表就是反转后的链表。具体伪代码操作:
reverse(NodeList list)
if list == null
return null
NodeList newList
Node temp = list->next
newList->next = null
while temp != null
temp->next = newList->next
newList->next = temp
temp = temp->next
return newList