![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试算法题
文章平均质量分 92
uzck
这个作者很懒,什么都没留下…
展开
-
并查集的实现
题目描述 给定一个没有重复值的整形数组arr,初始时认为arr中每一个数各自都是一个单独的集合。请设计一种叫UnionFind的结构,并提供以下两个操作。 boolean isSameSet(int a, int b): 查询a和b这两个数是否属于一个集合 void union(int a, int b): 把a所在的集合与b所在的集合合并在一起,原本两个集合各自的元素以后都算作同一个集合 [...原创 2020-03-25 16:01:16 · 174 阅读 · 0 评论 -
在两个长度相等的排序数组中找到上中位数
在两个长度相等的排序数组中找到上中位数 题目描述 给定两个有序数组arr1和arr2,已知两个数组的长度都为N,求两个数组中所有数的上中位数。上中位数:假设递增序列长度为n,若n为奇数,则上中位数为第n/2+1个数;否则为第n个数 输入为:arr1 = [1, 2, 3, 4], arr2 = [3, 4, 5, 6],输出为3 输入为:arr1 = [0, 1, 2], arr2 = [3, 4...原创 2020-02-13 01:29:34 · 1043 阅读 · 0 评论 -
KMP算法
KMP算法 KMP算法用于在文本串S内查找模式串P的出现位置 时间复杂度为O(M + N) 最大长度表 前缀和后缀 前缀:除了最后一个字符以外,一个字符串的全部头部组合 后缀:除了第一个字符以外,一个字符串的全部尾部集合 前缀后缀的最长公共元素长度 举例说明,假如模式串为P = "ABCABD" 模式串 A B C A B D 最大前缀后缀公共元素长度 0 0 0 1 2 0 ...原创 2020-02-02 11:36:42 · 432 阅读 · 0 评论 -
数组中未出现的最小正整数
数组中未出现的最小正整数 题目来源《程序员代码面试指南》第八章 题目描述 给定一个无序数组arr,找到数组中未出现的最小正整数 arr = [-1, 2, 3, 4]。返回1 arr = [1, 2, 3, 4]。返回5 [要求] 时间复杂度为O(N)O(N)O(N),空间复杂度为O(1)O(1)O(1) 思路 理想情况:一个N长度的有序数组存放[1,2,...,N]这样的数组,要找出缺少的最小正...原创 2020-01-30 16:45:46 · 531 阅读 · 0 评论