- 博客(3)
- 资源 (2)
- 收藏
- 关注
原创 第二章 链表part01
但这种做法的弊端就是必须保证节点数大于等于3个,而且在nex指针的处理上还会出现nex.next不存在的情况,所以这些情况都是要自己debug才能想象出来的。这里说一下虚拟头结点的重要性,当我们需要对一个链表进行从前向后的操作时,第一个节点会因为没有前置节点所以需要进行特殊处理,但如果创建一个虚拟头结点,那么就能让整个链表的节点操作统一化,因此创建一个虚拟头结点是十分有必要的。一套常规的设计类的题目,自己设计并实现一套类似LinkedList的API,总体来说难度不小,需要考虑的情况会很多。
2023-08-11 19:12:32 42
原创 第一章 数组part02
思路:本质是拿双指针来实现滑动窗口。对左侧窗口何时添加、去除元素的细节比较难以把握,建议边debug边修改代码。针对其中的while循环,是大于还是大于等于,也考察了对代码的理解程度。这里只提供本人思考的代码,卡尔哥的代码其实更加的简洁也易懂,他把操作窗口左侧的元素放入了while循环中,会更好理解点。
2023-08-10 20:34:09 184
原创 第一章 数组part01
此题主要考查二分查找的运用,这里我直接将二分查找封装成一个一个函数,通过指定开始和结束的数组下标来限定二分查找的位置。然后通过在while循环中不断地缩小二分查找的范围,直到触碰到范围边界或者数组边界为止。这里针对数组边界,在while前后都加了if条件限制,防止特殊情况的出现。//初始二分查找,确定数组内是否有该元素 int [ ] result = {} else {
2023-08-09 15:55:18 361 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人