集合解法
思路:将链表的值放入集合中,再让集合从头和尾开始对比,期间有不同就false返回
2.递归解法
其实递归解法就是调用本身,但是大家知道递归是会一直循环调用自己,除非有跳出循环的条件,这一题就是把进来的链表判断是否为空作为递归的终止条件,在if(!currenNode(currenNode.next))中,我们是会一直调用本身,直到currenNode变成null开始返回true,我们可以看到这里设置了为反(!),所以这里为false,是不会进入的,所以继续往后走,开始比较currenNode的最后一个值与原链表的第一个值是否相等,如果相等则继续往后走,让原链表往后走一个结点,比较第二轮,走到最后返回还是true,所以重复刚才的操作,如果其中有不相等就会返回false,我们就一直在为反等于true,所以一直进入 if(!currenNode(currenNode.next))中;
个人认为这个相当于是让链表反转之后用来比较原来的链表,但是这个反转之后的链表是要打上引号的,并不是一个真实的链表,只是能返回一个倒转之后的值