Leetcode-234. Palindrome Linked List
来源:互联网 发布:mac book需要wpa2密码 编辑:程序博客网 时间:2024/05/20 05:07
## 题目
判断一个链表是不是回文
思路
先寻找链表的中间节点,然后反转中间节点及以后的节点,得到一个反转链表,比较原链表和反转链表即可。时间复杂度O(n),空间复杂度O(1)
代码
class Solution {public: bool isPalindrome(ListNode* head) { if(NULL == head || NULL == head->next) return true; //找中间节点 ListNode *p_fast = head, *p_slow = head; while(p_fast && p_fast->next) { p_fast = p_fast->next->next; p_slow = p_slow->next; } //反转中间节点及以后的节点 ListNode *p = p_slow, *q = p->next, *t; p->next = NULL; while (q) { t = q->next; q->next = p; p = q; q = t; } //比较 ListNode* p1 = head; while(p){ if(p->val != p1->val) return false; p = p->next; p1 = p1->next; } return true; }};
0 0
- [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
- 234. Palindrome Linked List LeetCode
- 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
- 【LeetCode】234. Palindrome Linked List
- [Leetcode]234. Palindrome Linked List
- 【leetcode】234. Palindrome Linked List
- 白话经典算法系列之五 归并排序的实现(讲的真好)
- shadowsock-qt5+chrome配置,conky配置
- C#入门 错误笔记
- js 动画效果三大家族
- Modbus 功能码解析
- Leetcode-234. Palindrome Linked List
- 简要说说Linux下Git服务器架设
- 计蒜客蓝桥杯模拟赛5 礼物盒
- 使用Java实现串口通信
- python3数据类型
- UVA
- 动态规划 背包问题 C++
- gps定位性能
- 设计模式之原型模式