我是采用先反转一整个链表再判断两个链表是否匹配,看不出来啥问题,但还是有错,求解答!/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */// 反转链表struct ListNode* reverseList(struct ListNode* head) { struct ListNode* pre = NULL; // 保存下一个节点 struct ListNode* temp = head; while(head) { // 保存下一个节点的位置 temp = head->next; // 反转链表 head->next = pre; // 更新节点 pre = head; head = temp; } return pre;}bool isPalindrome(struct ListNode* head){ // 反转后的链表 struct ListNode* newList = reverseList(head); // 比较两个链表的值 while(head && newList) { if(head->val != newList->val) { return false; } head = head->next; newList = newList->next; } return true;}