struct ListNode{int val; \\链表数字域ListNode *next; \\链表指针域ListNode(int x) : val(x), next(NULL) {}}
206. 反转链表(easy)
class Solution {public:ListNode* reverseList(ListNode* head) {ListNode *previous = NULL;ListNode *node = head;ListNode *next = head;while(node!=NULL){next = next->next;node->next = previous;previous = node;node = next;}return previous;}};
更多算法题
使用temp和记录节点值去进行链表逆序。
- 链表逆序(不可申请额外空间)—-206(easy)
- 链表逆序b(不申请额外的空间),从m到n逆序。—-92(medium)
- 求两个链表的交点,已知headA和headB。—-160(easy)
- 链表求环,(快慢指针)给定一个链表,判断其中是否有环—-141(easy)
- 链表划分,将小于x的放在大于x的节点前,且保持相对位置—-86(medium)
- 复制带随机指针的链表,节点中存在指向任意节点的随机指针—-138(hard)
- 排序链表的合并,合并两个已排序的链表,合并后也有序。—->21(easy)
- k个排序链表的合并,合并后任然有序。 —->23(hard)
