存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。 返回同样按升序排列的结果链表。 示例 1: 输入:head = [1,1,2]输出:[1,2] 示例 2: 输入:head = [1,1,2,3,3]输出:[1,2,3] 提示: 链表中节 ...
分类:
编程语言 时间:
2021-06-02 15:48:48
阅读次数:
0
面试题 02.08. 环路检测 (Linked List Cycle LCCI) 给定一个链表,如果它是有环链表,实现一个算法返回环路的开头节点。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中 ...
分类:
其他好文 时间:
2021-05-24 16:16:28
阅读次数:
0
剑指 Offer 24. 反转链表 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 限制: 0 <= 节点个数 <= 5000 思路 golang 笨方法:遍历链表,新建 ...
分类:
其他好文 时间:
2021-04-24 13:41:51
阅读次数:
0
2021-04-09:rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null。给定一个由Node节点类型组成的无环单链表的头节点 head,请实现一个函数完成这个链表的复制,并返回复制的新链表的头节点。 【要求】时间复杂度O(N),额外空间复杂度O(1) ...
分类:
其他好文 时间:
2021-04-10 13:17:53
阅读次数:
0
仅供自己学习 思路: 按照题目要求我们需要定义一个head头节点,并且因为树是二叉搜索树,所以要采取中序遍历才能得到从小到大的排序。 按照中序遍历的模板 dfs(root->left); cout<<root->val; dfs(root->right); 同样我们也通过这个模板写DFS,这里因为是 ...
分类:
其他好文 时间:
2021-04-05 12:33:29
阅读次数:
0
相关描述 给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。 方式一:简单方法 -- 通过不断拿到最后一个节点 和 删除最后节点的 链表头结点 进行头插入; static class ListNode { public int val; public ListNode ...
分类:
其他好文 时间:
2021-03-29 12:22:10
阅读次数:
0
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 class Solution: def removeElements(self, head: ListNode, val: int) -> ListNode: ...
分类:
其他好文 时间:
2021-03-16 11:53:35
阅读次数:
0
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val ...
分类:
其他好文 时间:
2021-03-08 13:28:22
阅读次数:
0
编号206:反转链表 题意:反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 思路 这里我们只需要改变节点Next域的指向即可,实现原地反转。这里我们需要借助一个辅助指针pre初始化指向nil最后最为新的头节点,一个cur指针指 ...
分类:
其他好文 时间:
2021-02-09 12:19:16
阅读次数:
0
public class SinglyLinkedList<T> { // 一个空的头节点 private final Node head = new Node(null); private Node tail = head; @SafeVarargs public final void addAl ...
分类:
其他好文 时间:
2021-02-08 12:42:48
阅读次数:
0