关注Java领域相关技术 记录有趣的事情

线性表

LeetCode-234. 回文链表

问题地址 LeetCode每日一题/2020-10-23 LeetCode234. 回文链表 问题描述 规则 请判断一个链表是否为回文链表。 示例 示例1 输入: 1->2 输出: false 示例2 输入: 1->2->2->1 输出: true 进阶 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 思路分析 判断一个链表是否为回文链表,只需要使用两个指针,一个正向移动,一个从后往前移动,移动的过程中比较两个指针所指向节点的值即可。因为题目给定的是单向链表,只能从前往后访问链表元素,所以我们可以使用如下方法: 方法一:使用线性表存储链表元素,遍历线性…
US-B.Ralph
11 months ago

LeetCode-143. 重排链表

问题地址 LeetCode每日一题/2020-10-20 LeetCode143. 重排链表 问题描述 规则 给定一个单链表 L:L0→L1→…→Ln-1→Ln , 将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→… 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例 示例1 给定链表 1->2->3->4, 重新排列为 1->4->2->3. 示例2 给定链表 1->2->3->4->5, 重新排列为 1->5->2->4->3. 解析 解题思路 最直观的想法是使用线性表存…
US-B.Ralph
11 months ago