【发布时间】:2020-08-30 13:29:28
【问题描述】:
下面是查找 LinkedList 是否为回文的代码 为什么此代码在此行时显示错误 bool isPal = check(p->next) & (temp->val == p->val); 在下面的代码中写为 bool isPal = (temp->val == p->val) & check(p->next); 对于输入[1,0,1]-------只是取AND的顺序颠倒了
class Solution {
public:
ListNode* temp;
bool isPalindrome(ListNode* head) {
temp = head;
return check(head);
}
bool check(ListNode* p) {
if (NULL == p) return true;
bool isPal = check(p->next) & (temp->val == p->val);
temp = temp->next;
return isPal;
}
};
【问题讨论】:
-
&& 是 and 运算符
标签: linked-list bit-manipulation and-operator