题解 | #判断一个链表是否为回文结构#

判断一个链表是否为回文结构

http://www.nowcoder.com/practice/3fed228444e740c8be66232ce8b87c2f

双指针和链表反转

 * struct ListNode {
 *	int val;
 *	struct ListNode *next;
 * };
 */

class Solution {
public:
    /**
     * 
     * @param head ListNode类 the head
     * @return bool布尔型
     */
    bool isPail(ListNode* head) {
		// write code here
		if (!head || !head->next)return true;
		ListNode* pre, *p = head;
		ListNode* newhead = new ListNode(0);
		while (p&&p->next) {
			p = p->next->next;
			pre = head;
			head = head->next;
			pre->next = newhead;
			newhead = pre;

			
		}

		if (p) {
			head = head->next;
		}
		while (head) {
			if (head->val != newhead->val)return false;
			head = head->next;
			newhead = newhead->next;
		}
		return true;

	}
};

alt

全部评论
6
点赞 回复 分享
发布于 2024-05-30 18:13 广东

相关推荐

_mos_:我以为手抄报简历就已经很顶了,没想到还有表格简历
点赞 评论 收藏
分享
是秃子总会发光_:科软的还被排序?不是大雪深埋吗
点赞 评论 收藏
分享
xdm怎么说 要被拷打了 担心是KPI
丹田:面就完了,就当日薪四位数的大佬免费给给你面试。
点赞 评论 收藏
分享
评论
5
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务