当前位置: 代码迷 >> 综合 >> [链表]13.判断一个链表是否是回文结构[网易、昆仑万维]
  详细解决方案

[链表]13.判断一个链表是否是回文结构[网易、昆仑万维]

热度:21   发布时间:2024-03-09 08:43:22.0

题目:给定一个链表,请判断该链表是否为回文结构

例如:输入[1,2,2,1],返回true;

解答:

1.不要求空间复杂,可以使用数组的形式,添加所有的节点到数组中;

2.设置变量i,j ,一个从前遍历,一个从后遍历,判断他们到是否相等,不等直接返回,相等i++,j--

import java.util.*;/** public class ListNode {*   int val;*   ListNode next = null;* }*/public class Solution {/*** * @param head ListNode类 the head* @return bool布尔型*/public boolean isPail (ListNode head) {// write code hereArrayList<ListNode> list = new ArrayList<ListNode>();while(head != null){list.add(head);head = head.next;}if(list.size() == 1) return true;int i = 0,j = list.size()-1;while(i<j){if(list.get(i).val!=list.get(j).val){return false;}i++;j--;}return true;}
}
  相关解决方案