如何有效率的刷leetcode LeetCodeLearn:力码学习

ashyboy_student 0 0 zip 2024-10-06 21:10:54

如何有效率的刷leetcode,LeetCodeLearn学习算法基础知识以及对应高频题目的解决。IDE刷题插件推荐:IntelliJ,可以查看MD文件。目录:Array数组、Linked List链表、栈、队列、Tree树遍历、排序、分治、动态规划。链表递归的模板:


public ListNode reverseList(参数0) { 

  if (终止条件) return;

  //逻辑处理(可能有,也可能没有,具体问题具体分析)

  ListNode reverse = reverseList(参数1);

  //逻辑处理(可能有,也可能没有,具体问题具体分析)

}

解决链表问题的技巧:将某个变量赋值给引用,实际上就是把这个变量的地址赋值给引用,如:p.next = q,表示将q的地址赋值给p.next。警惕指针丢失,注意操作的顺序。利用哨兵简化实现难度,可以解决边界问题,如插入第一个节点和删除最后一个节点,哨兵可以当成普通节点处理。重点留意边界条件处理,比如:链表为空、链表只有一个节点、链表只有两个节点、代码逻辑处理头尾节点的逻辑等。举例画图,多写多练。

用户评论
请输入评论内容
评分:
暂无评论