LeetCode刷题学习(三) -- 链表篇
LeetCode刷题学习记录,链表篇。 1. 基础 链表定义: // 单链表 struct ListNode { int val; // 节点上存储的元素 ListNode *next; // 指向下一个节点的指针 ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数 }; // 示例,初始化一个链表,构造...
LeetCode刷题学习记录,链表篇。 1. 基础 链表定义: // 单链表 struct ListNode { int val; // 节点上存储的元素 ListNode *next; // 指向下一个节点的指针 ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数 }; // 示例,初始化一个链表,构造...
LeetCode刷题学习记录,数组篇。 1. 704.二分查找 LeetCode题目链接:704. 二分查找 1.1. 思路和解法 二分查找有两种常见写法。循环条件和判断条件容易搞错,记住遵循 循环不变量规则(循环过程中每次处理边界时,坚持根据区间的定义来操作)。 左闭右闭区间 [] 区间:left=0; right=size()-1 循环条...
LeetCode刷题学习记录,此为开篇。 1. 背景 之前刷题更多是为了找工作的需求,为了做而做,缺少理解,而且最后并没用上多少,有点无疾而终的意思。 现在准备结合当前学习的一些项目和实践思考,换个角度去夯实数据结构和算法基础;同时可以增加些C++/Go/Rust的练手机会。 刷题学习的实践和思考,善用费曼学习法,通过博客输出,时间线单独拎出来免得博客文章显得混乱。 资料很多,放几...