摘要:
学习笔记五 反转链表 本题来自:力扣206. 反转链表 题目描述 对于一个如图所示的链表,将其翻转过来。注意,要在原链表身上进行操作,不能新建链表。 方法一:循环 第一种思路是最容易想到的,我们只需要两两交换相邻的节点指向,从头遍历到尾即可。 首先考虑特殊情况,在链表内没有节点时,或者只有一个节点时 阅读全文
摘要:
学习笔记六 N数之和 题目分析 本类题可分为两类,一种是利用哈希表直接进行查找,另一种是利用双指针进行双向查找。 哈希表 力扣01.两数之和 力扣454.四数相加 需要利用哈希表时的题目特征: 1,多个数不来自于同一个数组,这样不需要考虑同一数组中重复选择数字的问题。 2,如果数字是来自同一个数组, 阅读全文
摘要:
#学习笔记四 KMP算法应用 本题来自:力扣459.重复的子字符串 ##题目描述 给定一个非空的字符串 s ,判断 s 是否能通过它的一个子串重复多次获得。 这时候肯定有同学会问了,连要比较的短串是什么都不知道,怎么用KMP呢? ##编程思路 还是和 KMP算法实现过程一样,我们需要一个 next 阅读全文
摘要:
学习笔记三 KMP算法介绍 本题来自:力扣28.实现strStr() ##题目描述 简单来说,题目要求是从一个字符串 haystack 中找到另一个字符串 needle 出现的第一个位置。如果按暴力解法,题目解答很容易想到是 O(m * n) 的时间复杂度。那么,有没有一种解法,它的时间复杂度可以降 阅读全文