- 博客(3)
- 资源 (89)
- 收藏
- 关注
原创 阿里面试题 给定一个链表,删除链表的倒数第N个节点,并且返回链表的头结点
第一个指针从列表的开头向前移动 n+1 步,而第二个指针将从列表的开头出发。现在,这两个指针被 n 个结点分开。我们通过同时移动两个指针向前来保持这个恒定的间隔,直到第一个指针到达最后一个结点。此时第二个指针将指向从最后一个结点数起的第 n 个结点。我们重新链接第二个指针所引用的结点的 next 指针指向该结点的下下个结点。时间复杂度:O(L),该算法对含有 L 个结点的列表进行了一次遍历。给定一个链表: 1->2->3->4->5, 和 n = 2.空间复杂度:O(1),我们只用了常量级的额外空间。
2023-12-16 00:02:18 45
原创 阿里面试题 给定一个二叉搜索树(BST),找到树中第 K 小的节点
解法1:树相关的题目,第一眼就想到递归求解,左右子树分别遍历。联想到二叉搜索树的性质,root 大于左子树,小于右子树,如果左子树的节点数目等于 K-1,那么 root 就是结果,否则如果左子树节点数目小于 K-1,那么结果必然在右子树,否则就在左子树。因此在搜索的时候同时返回节点数目,跟 K 做对比,就能得出结果了。解法2:基于二叉搜索树的特性,在中序遍历的结果中,第k个元素就是本题的解。遍历并不是需要全部做完,使用计数的方式,找到第k个元素就可以退出。最差的情况是k节点是bst的最右叶子节点,不过。
2023-12-16 00:00:05 191
Docker环境下的前后端分离部署与运维
2023-11-29
- 为什么使用消息队列? - 消息队列有什么优点和缺点? - Kafka、ActiveMQ、RabbitMQ、RocketMQ
2023-02-14
redis 的并发竞争问题是什么?如何解决这个问题?了解 redis 事务的 CAS 方案吗?
2023-02-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人