leetcode
文章平均质量分 54
个人leetcode记录
发把大狙谢谢
这个作者很懒,什么都没留下…
展开
-
哈希集合(unordered_set)
哈希集合为一个无序集合,类似于哈希表(unordered_map),不过hash表用来查找元素的,而哈希集合主要是存储元素,判断是否在里面。需要注意的是:原创 2022-06-02 19:29:56 · 1821 阅读 · 0 评论 -
迭代器(iterator)简介
含义\qquad迭代器的作用是用来访问容器中的元素,可以理解为广义上的指针。类比于指针,我们使用指针访问数组,那么对于数组来说指针就是一种迭代器。\qquad但是在C++中有许多复杂的容器,例如vector、string、list、map等,对于这些不同的容器,我们都会使用为其量身打造的迭代器。对比于指针,不同容器的迭代器的功能更多。\qquad迭代器的使用\qquad对于所有的迭代器,他们的使用方法和指针一样//例如vector<typename> a;vector<ty原创 2022-05-13 20:38:41 · 866 阅读 · 0 评论 -
vector容器的使用
vector(向量)为封装了动态大小的顺序容器,可以理解为变长数组,长度可以任意变化,甚至定义时令其长度为0与数组类似,可以直接访问(下标)1.初始化#include <vector>vector<typename> name; //typename可为简单或复合类型vector<Node*> n;vector<int> a; //长度为0的vectorvector<int> a(100); //长度100,值默认均为0(i原创 2022-05-12 23:25:38 · 349 阅读 · 0 评论 -
hash表的简单使用 (unordered_map)
hash表表项是 (键-值) 对(key-value)hash表的健和值可以是任何类型,可以是int、结构体、对象、对象的指针…一.初始化#include <unordered_map> //map为#include <map>unordered_map<Node*, Node*> tablenode; //Node*类型unordered_map<int, string> table={{5,"a"},{6,"b"}}; //直接初始化原创 2022-05-12 19:46:01 · 363 阅读 · 0 评论 -
leetcode704,278,35 二分查找
leetcode 二分查找704,278,35704 二分查找题目:给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。提示:1.你可以假设 nums 中的所有元素是不重复的。2.n 将在 [1, 10000]之间。 3.nums 的每个元素都将在 [-9999, 9999]之间。 //意思是不用考虑过界问题分析:直接二分查找即可,值得注意的是,二分查找并不原创 2021-07-11 20:03:16 · 99 阅读 · 0 评论 -
leetcode 4. 寻找两个正序数组的中位数
给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。解法一:直接开辟第三个数组n[s1+s2],让两个数组从数组头元素开始一一比较,小的进入第n,直到全部进入n。此时我们只需要判断n.size()是奇数或者偶数,奇数返回n[mid](mid=(s-1)/2),偶数返回(double)(n[mid]+n[mid+1])/2时间:O(m+n)O(m+n)O(m+n),空间:O(m+n)O(m+n)O(m+n)double merg原创 2021-07-27 16:39:50 · 84 阅读 · 0 评论 -
leetcode1. 两数之和
给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。...原创 2021-06-20 17:11:43 · 361 阅读 · 0 评论