leetcode:234 Palindrome Linked List-每日编程第四十四题
来源:互联网 发布:mac默认启动windows 编辑:程序博客网 时间:2024/06/14 00:34
Palindrome Linked List
Total Accepted: 31409 Total Submissions: 122659 Difficulty: Easy
Given a singly linked list, determine if it is a palindrome.
Follow up:
Could you do it in O(n) time and O(1) space?
思路:
1.快慢指间找到链的中间部分。
2.在1中,慢指针的遍历过程中,还要改变指针的方向,使得最后链可由中间通过指针走到两端末尾。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: bool isPalindrome(ListNode* head) { if(head==NULL){ return true; } if(head->next==NULL){ return true; }else if(head->next->next==NULL){ if(head->next->val==head->val){ return true; }else{ return false; } } ListNode* p=head; ListNode* q=head; ListNode* temp=head; ListNode* pre=NULL; while(q->next!=NULL&&q->next->next!=NULL){ q=q->next->next; temp=p->next; p->next=pre; pre=p; p=temp; } if(q->next==NULL){ p=pre; q=temp->next; }else{ q=temp->next; p->next=pre; } while(p!=NULL){ if(p->val!=q->val){ return false; } p=p->next; q=q->next; } return true; }};
0 0
- leetcode:234 Palindrome Linked List-每日编程第四十四题
- leetcode:237 Delete Node in a Linked List-每日编程第四题
- 【leetcode每日一题】234.Palindrome Linked List
- leetcode:206 Reverse Linked List-每日编程第十四题
- Palindrome Linked List leetcode 234
- 【LeetCode】234 Palindrome Linked List
- Palindrome Linked List (leetcode 234)
- leetcode 234: Palindrome Linked List
- leetcode[234]:Palindrome Linked List
- LeetCode 234Palindrome Linked List
- leetcode-234-Palindrome Linked List
- [Leetcode 234] Palindrome Linked List
- Leetcode #234 Palindrome Linked List
- [LeetCode 234] Palindrome Linked List
- Leetcode 234 Palindrome Linked List
- LeetCode(234)Palindrome Linked List
- leetcode 234: Palindrome Linked List
- [Leetcode]#234 Palindrome Linked List
- 浅谈onInterceptTouchEvent、onTouchEvent与onTouch
- Annotation介绍
- 实体超市该如何发展,互联网超市前景如何
- 古文搜索网站
- 把android文件打成jar包
- leetcode:234 Palindrome Linked List-每日编程第四十四题
- Javabean实现可序列化接口
- Unity手游之路<十二>手游资源热更新策略探讨
- 多思考,少问
- 车质网
- leetcode 258 Add Digits
- oracle 数据库
- C/C++进阶笔记(0)
- Understanding Angular’s $apply() and $digest() / 理解Angular中的$apply()以及$digest()