10 2022 档案
摘要:#KMP算法 前缀表:记录下标i之前(包括i)的字符串中,有多大长度的相同前缀后缀。 前缀是指不包含最后一个字符的所有以第一个字符开头的连续子串。 后缀是指不包含第一个字符的所有以最后一个字符结尾的连续子串。 ##如何计算前缀表 如图: 长度为前1个字符的子串a,最长相同前后缀的长度为0。(注意字符
阅读全文
摘要:#反转字符串 题目 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 1: 输入:["h","e","l","l","o"] 输出:["o","l","
阅读全文
摘要:#四数相加II ##题目 给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。 输入: A = [ 1, 2] B = [-2,-1] C = [-1, 2] D = [ 0, 2]
阅读全文
摘要:#哈希表理论基础 哈希表是根据关键码的值而直接进行访问的数据结构。 哈希碰撞 拉链法 拉链法就是要选择适当的哈希表的大小,这样既不会因为数组空值而浪费大量内存,也不会因为链表太长而在查找上浪费太多时间。 线性探测法 使用线性探测法,一定要保证tableSize大于dataSize。 我们需要依靠哈希
阅读全文