首页 > 试题广场 >

回文链表

[编程题]回文链表
  • 热度指数:29198 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解


现给定一个链表ListNode* pHead,定义bool代表链表是否为回文,请编写程序。

测试样例:
{1,2,3,2,1}
返回:true
{1,2,3,2,3}
返回:false

说明:本题目包含复杂数据结构ListNode,点此查看相关信息
头像 cl、
发表于 2020-10-28 11:09:27
一个比较简单的方法:利用队列和栈的性质 队列:先进先出;栈:后进先出 对队列和栈进行出队和出栈,然后进行比较 不相同返回false即可public class Palindrome { public boolean isPalindrome(ListNode pHead) { // 展开全文
头像 Jorunnaparva
发表于 2020-10-07 09:09:58
/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) {} };*/ class Palindrome { public: bool isPa 展开全文
头像 影尘
发表于 2020-01-09 10:50:35
从两边往中间比:递归到最后一个再开始比较 private ListNode head = null; public boolean isPalindrome(ListNode pHead) { if (head == null) head = pHead; if (pHead.n 展开全文
头像 牛客548207004号
发表于 2023-11-23 21:04:21
import java.util.*; /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ publ 展开全文