美文网首页
算法学习(查找表相关的问题)

算法学习(查找表相关的问题)

作者: SEU小翔哥 | 来源:发表于2021-12-22 11:42 被阅读0次

set 和 map 常见操作
insert, find, erase, change(map),count
set:
record.find(x) != record.end() //查看set里面有没有x这个元素
res_set.insert(x) // 在set中插入x这个值
unordered_set<int> record(nums1.begin(), nums1.end()) //将vector的值赋值给set
vector<int> res_vector(res_set.begin(),res_set.end()) //将set的值赋值给vector
map:
record.count(x) //判断record哈希表中有没有x

LeetCode 349 两个数组的交集,方法:set的使用

image.png

LeetCode 350 两个数组的交集II, 方法:map的使用

image.png

LeetCode 242 有效的字母异位词(练习),完成,方法:hash_map

image.png

LeetCode 202 快乐数(练习), 完成,方法:用哈希集合检测循环

image.png

LeetCode 290 单词规律(练习), 完成,方法:双哈希表

image.png

LeetCode 205 同构字符串(练习), 完成, 方法:双哈希表

image.png

LeetCode 451 根据字符出现频率排序(练习), 完成,方法:哈希表+对含pair的vector排序

sort(vec.begin(), vec.end(), [](const pair<char,int> &a, const pair<char,int> &b){return a.second > b.second;});

image.png

LeetCode 1 两数之和,方法哈希map

image.png

LeetCode 15 三数之和(练习),完成,方法:双指针。hash表效率很低

image.png

LeetCode 18 四数之和(练习),完成,方法:双指针

image.png

LeetCode 16 最接近三数之和(练习)完成,方法:双指针。

image.png

LeetCode 454 四数相加

image.png

LeetCode 49 字母异位词分组(练习),完成,方法:哈希表

    vector<vector<string>> res;
    unordered_map<string,vector<string>> record;
    for(auto it = record.begin(); it != record.end(); ++it){
        res.push_back(it->second);
    }
image.png

LeetCode 447 回旋镖的数量

image.png

LeetCode 149 直线上最多的点数(练习)

image.png

LeetCode 219 存在重复元素, 方法:滑动窗口+set查找

image.png

LeetCode 217 存在重复元素(练习)

image.png

LeetCode 220 存在重复元素III, 方法:使用record.lower_bound()

image.png

相关文章

  • 算法学习(查找表相关的问题)

    set 和 map 常见操作insert, find, erase, change(map),countset:r...

  • 2018-03-30 算法 :查找简介

    世界上没有最好的算法,只有最合适的算法 查找算法:静态查找,动态查找 静态查找(一般使用线性表)的分类: 顺序查找...

  • 常考的数据结构与算法之算法

    本文记录一下我学习数据结构与算法中算法的知识点,使用的语言是C/C++语言 查找 二分查找又叫折半查找,要求线性表...

  • 二分查找算法

    一、二分查找算法 二分查找算法又称为折半查找算法,它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序...

  • 二分查找

    1.非顺序表查找最大值递归算法 2.顺序表的二分查找算法查找下标最小的特定元素x 递归实现 非递归实现

  • 查找技术

    静态表查找 只做查找操作的查找表应用线性表结构来组织数据,用顺序查找算法。如果对主关键字排序,可以折半查找等高效查...

  • 查找算法入门教程-插值查找

    我们学习了二分查找,本节我们来学习插值查找算法,在学习之前我们先来看看二分查找的不足之处 假设我有一组有序的线性表...

  • 算法-查找-树表查找

    参考地址:http://www.cnblogs.com/maybe2030/p/4715035.html#_lab...

  • 【查找算法】二分查找/插值查找/斐波那契查找(PHP)

    除了排序,查找指定值也是常见的功能,所以非常有必要掌握一下相关算法。经典查找算法有顺序查找、二分查找、差值查找、斐...

  • 查找算法总结及其算法实现(Python/Java)

    -----正文开始----- 预备知识 查找算法分类 1)静态查找和动态查找; 注:静态或者动态都是针对查找表而言...

网友评论

      本文标题:算法学习(查找表相关的问题)

      本文链接:https://www.haomeiwen.com/subject/xerqqrtx.html