其他分享
首页 > 其他分享> > 判断链表的回文结构

判断链表的回文结构

作者:互联网


#define Node ListNode

class Solution {
public:
    /**
     * 
     * @param head ListNode类 the head
     * @return bool布尔型
     */
    bool isPail(ListNode* head) {
        if(head==NULL ||head->next ==NULL) return true;
        // write code here
        ListNode*first=head,*last=head;
        while(first && first->next) first=first->next->next,last=last->next;
        stack<Node*>s;
        while(last) {
            s.push(last);
            last = last->next;
        }
        last = head;
        while(s.size() && last->val == s.top()->val) last = last->next,s.pop();
        return s.empty();
        
    }
};

标签:head,判断,last,回文结构,return,next,链表,ListNode,first
来源: https://www.cnblogs.com/lyr-2000/p/14322388.html