用循环检查链表是否为回文的 Javascript 程序
给定一个带有循环的链表,任务是找出它是否是回文。不允许删除循环。
例子:
Input: 1 -> 2 -> 3 -> 2
/| |/
------- 1
Output: Palindrome
Linked list is 1 2 3 2 1 which is a
palindrome.
Input: 1 -> 2 -> 3 -> 4
/| |/
------- 1
Output: Not Palindrome
Linked list is 1 2 3 4 1 which is a
not palindrome.
算法:
- 使用弗洛伊德循环检测算法检测环路。
- 然后找到循环的起始节点,如本文所述。
- 检查链表是否为回文,如本文所述。
下面是实现。
Javascript
输出:
Palindrome
请参阅完整的文章检查带有循环的链表是否回文以获取更多详细信息!