Leetcode206
来源:互联网 发布:转行程序员 编辑:程序博客网 时间:2024/06/06 09:10
/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */struct ListNode* reverseList(struct ListNode* head) { if(!head) return(NULL); else { struct ListNode *pr, *p; p = head -> next; pr = NULL; while(p) { head -> next = pr; pr = head; head = p; p = p -> next; } head -> next = pr; return(head); }}
总体思路:
使用三个指针,分别指向前、中、后三个结点。用循环依次修改链表中每一个结点的指针域,使其指向前一个结点。然后再移动三个指针,处理下一个结点。
实现要点:
1.三个指针的创建。
2.修改指针域,移动指针。
时间复杂度分析:
对链表遍历一遍,时间复杂度为O(n)。
遇到的问题:
1.当输入空链表时,访问头结点的下一个结点时报错。
2.结束循环时,最后一个结点的指针域实际上还是指向NULL,需要在结尾进行修改,使其指向前一个结点。
阅读全文
0 0
- Leetcode206
- Reverse Linked List LeetCode206
- LeetCode206:Reverse Linked List
- [LeetCode206] Course Schedule II
- leetcode206 Reverse Linked List
- Leetcode206: Trapping Rain Water
- leetcode206 Reverse Linked List
- leetcode206. Reverse Linked List
- 【Leetcode206】 Reverse Linked List
- leetcode206. reverse linked list
- leetcode206&92&24
- leetcode206~Reverse Linked List
- leetcode206. Reverse Linked List
- [leetcode206]Reverse Linked List
- Leetcode206. Reverse Linked List
- LeetCode206. Reverse Linked List I
- LeetCode206—Reverse Linked List
- Leetcode206. Reverse Linked List总结
- 两数和-输入已排序的数组-LintCode
- vue2.0 父子传值,子父传值
- 软件设计师考试
- 顺序表作业
- PIPE
- Leetcode206
- Unable to inject views for 。。。。
- 三级菜单
- spring data jpa使用错误记录
- ubuntu 防火墙操作
- 解决Caffe训练过程中loss不变问题
- Python Windows pyhs2下模块安装
- 朴素算法
- 机器模型性能度量