Map集合 map集合的使用 package pkg2020华南虎; import java.util.HashMap; import java.util.Map; /** * * @author yl */ /*双列集合: Map:实现Map接口的集合类,具备的特点:存储的数据都是以键值对的方式, ...
分类:
编程语言 时间:
2020-02-10 18:07:42
阅读次数:
91
我发现想出kmp算法的人tql,我理解都要理解半天(太抽象了QAQ)。 kmp代码的自己理解: #include <string> #include <iostream> #include <vector> using namespace std; const int N = 10000; int ...
分类:
编程语言 时间:
2020-02-10 13:59:18
阅读次数:
50
一个字符串能重排成回文串等价于这个字符串最多只有一个字符出现次数为奇数次 这题的询问和子树中深度有关,那么显然可以用dsu on tree解决 把询问离线下来挂在点上,然后按dsu on tree的顺序统计子树信息即可 复杂度\(O(nlogn+26m)\) 1 #include<bits/stdc ...
分类:
其他好文 时间:
2020-02-10 13:37:02
阅读次数:
64
楼上的思路都是从一个石头找跳到另一个石头的路径,但其实这题可以对于上下左右四个方向分别做一个虚拟节点,然后只需要找虚拟节点左边的虚拟节点就行了 问题是:不会用set怎么办??? 其实可以发现用vector二分可以实现同样的操作(~~虽然长得不行而且还各种wa~~) vector存图的方法: 分别存下 ...
分类:
其他好文 时间:
2020-02-10 09:56:31
阅读次数:
64
贪心算法(应该算吧),每次至少复合一对情侣 1 class Solution { 2 public: 3 int minSwapsCouples(vector<int>& row) { 4 if(row.empty()){return 0;} 5 int n=row.size(); 6 vector ...
分类:
其他好文 时间:
2020-02-10 09:53:51
阅读次数:
58
1 class Solution { 2 public: 3 int firstMissingPositive(vector<int>& nums) { 4 if(nums.empty()){return 1;} 5 int n=nums.size(); 6 for(int i=0;i<n;++i) ...
分类:
其他好文 时间:
2020-02-09 23:59:34
阅读次数:
131
题意:对于一个有序数组,输出和为target的两个元素的下标。题目保证仅有唯一解。 分析: 法一:二分。枚举第一个元素,二分找另一个元素,时间复杂度O(nlogn),非最优解。 class Solution { public: vector<int> twoSum(vector<int>& numb ...
分类:
其他好文 时间:
2020-02-09 22:14:01
阅读次数:
73
Ps: 实现一个窗口内的最大值与最小值更新结构,使用双端队列。 这里以数组内有多少组两数之差小于特定的number为例。 class Solution { public: int getNum(vector<int> arr, int num) { if (arr.size() == 0) retu ...
分类:
其他好文 时间:
2020-02-09 22:03:27
阅读次数:
57
单点修改+区间查询=树状数组 空间复杂度O(n) 时间复杂度O(mlogn) 1 #include <set> 2 #include <map> 3 #include <cmath> 4 #include <queue> 5 #include <vector> 6 #include <cstdio> ...
分类:
编程语言 时间:
2020-02-09 20:34:15
阅读次数:
79
Java 集合框架 早在Java 2中之前,Java就提供了特设类。比如:Dictionary, Vector, Stack, 和Properties这些类用来存储和操作对象组。 虽然这些类都非常有用,但是它们缺少一个核心的,统一的主题。由于这个原因,使用Vector类的方式和使用Propertie ...
分类:
编程语言 时间:
2020-02-09 18:47:14
阅读次数:
104