算法设计与应用基础
来源:互联网 发布:经典福克斯轮毂数据 编辑:程序博客网 时间:2024/06/14 02:56
234. Palindrome Linked List
Given a singly linked list, determine if it is a palindrome.
class Solution {
public:
bool isPalindrome(ListNode* head) {
if(head==NULL||head->next==NULL)
return true;
ListNode* slow=head;
ListNode* fast=head;
while(fast->next!=NULL&&fast->next->next!=NULL){
slow=slow->next;
fast=fast->next->next;
}
slow->next=reverseList(slow->next);
slow=slow->next;
while(slow!=NULL){
if(head->val!=slow->val)
return false;
head=head->next;
slow=slow->next;
}
return true;
}
ListNode* reverseList(ListNode* head) {
ListNode* pre=NULL;
ListNode* next=NULL;
while(head!=NULL){
next=head->next;
head->next=pre;
pre=head;
head=next;
}
return pre;
}
};
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- 算法设计与应用基础
- java中日期字符中首位为0去掉
- SylixOS移植Redis库总结
- 经典正则表达式
- 【记录】ubuntu中启动主机上的win10系统
- javascript 将数字转成货币类型( 1000 => ¥1,000.00)
- 算法设计与应用基础
- 欢迎使用CSDN-markdown编辑器
- mongo cluster of replicate set and shard
- JAVASCRIPT实现FLY BIRD小游戏
- android布局常用属性
- Android 比较两个时间的时间差
- GreenDao框架入门及基础使用(Android studio 完整配置)
- Kotlin学习笔记(二)循环,跳转
- CString与char *互转总结