题目:请判断一个链表是否为回文链表。
示例 1:
输入: [1,2]
输出: false
示例 2:
输入: [1,2,2,1]
输出: true
示例3:
输入[1,2,2,3]
输出:false
使用方法:将链表保存到数组中,按照数组回文判断方式进行判断
代码如下:
class Solution{
public boolean isPalindrome(ListNode head){
int length = 0;
ListNode p = head;
while (p!=null){
length++;
p = p.next;
}
//建立一个数组保存链表值进行比较
int [] c = new int[length];
for (int i=0;i<c.length;i++){
if (head!=null)
{
c[i] = head.val;
head = head.next;
}
}
for (int j=0,k=c.length-1;j<k;j++,k--){
if (c[j] != c[k])
return false;
}
return true;
}
}```