最新 最热

题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。

输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。

2022-10-26
0

队列的两种实现方法

队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出

2022-10-26
1

请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构

对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。...

2022-10-26
0

在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。

例如 链表1->2->3->3->4->4->5 处理后为 1->2->5 public ListNode deleteDuplication(ListNode pHead) { ListNode cur = this.head; ListNode newHead = new ...

2022-10-26
0

返回链表中倒数第k个节点

思路: 定义fast 和 slow ,先让fast走k-1步,然后再让slow和fast同时走1步,最后得到的slow就是所求的值

2022-10-26
0

给定一个头结点为 head 的非空单链表,返回链表的中间结点,如果有两个中间结点,则返回第二个中间结点。

思路: 定义一个fast和一个slow,fast每走两步,slow就走一步, 最终返回的slow就是中间的值(链表的节点个数为奇数偶数都适用)

2022-10-26
0

java——ArrayList和LinkedList的区别以及List的实现

ArrayList和LinkedList有什么区别:1.ArrayList底层结构是顺序表(基于数组); LinkList是链表;2.ArrayList数据存放在内存空间上; LinkList不是存放在连续的内存空间上;3.ArrayList能够高效的进行 “随机访问 ” ,按照下...

2022-10-26
1

Java——判断是否为回文

2.找到链表的中间值 fast一次走两步,slow一次走一步,这样,当fast走到末尾的时候,slow刚好可以走到链表中间

2022-10-26
0

java——删除单链表中所有重复的结点

2.寻找并去除 重复的结点 先定义一个引用cur,当链表不为空、不能发生空指针异常,且cur.next.data 等于cur.data的时候,让cur往后走一步,直到不相等的时候,将结点连接到新建节点node后,此时删除重复节点之后的链表就是所得到...

2022-10-26
0

leetcode 1019. 链表中的下一个更大节点 js实现

对于列表中的每个节点,查找下一个 更大节点 的值。也就是说,对于每个节点,找到它旁边的第一个节点的值,这个节点的值 严格大于 它的值。

2022-09-24
0