此提示单链表判断回文,我本来的思路是 逆转单链表前半截,在跑一次,应该能满足时间复杂度o(n)和空间复杂度o(1),但是不知道为啥老判我超时。
看了discuss和hint,其实简单递归一下就可以了。
class Solution { public: ListNode * temp; bool isPalindrome(ListNode* head) { temp = head; return check(head); }</p> <pre><code>bool check(ListNode * node) { if (NULL == node) return true; bool flag = check(node-&gt;next) &amp; node-&gt;val == temp-&gt;val; temp = temp-&gt;next; return flag; } </code></pre> <p>};