一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,一个O(1)查找的利器哈希表,所以放到一篇Blog中集中练习文章来源地址https://www.toymoban.com/news/detail-836299.html
题目 | 关键字 | 解题思路 | 时间 | 空间 |
---|---|---|---|---|
两数之和 | 辅助哈希 | 使用map存储出现过的值,key为值大小,value为下标位置,遍历过程中判断所需值是否出现过targetNum-nums[i] ,出现过则记录结果,如果没有则继续记录 |
O(n) | O(n) |
三数之和 | 排序+双指针 | 在遍历数组过程中,以当前数为基准数,剩余区间满足两数之和为基准数相反值的情况就是目标组合,需要注意基准数遍历以及双指针漫游过程中重复元素的跳过 | O(nlogn) +O(n*n) | O(n) |
三数之 |
文章来源:https://www.toymoban.com/news/detail-836299.html
到了这里,关于【Java程序员面试专栏 数据结构】四 高频面试算法题:哈希表的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!