当前位置: 首页 > wzjs >正文

移动版网站模板重庆网站优化

移动版网站模板,重庆网站优化,网页制作与网站建设实战大全 pdf,黄山自驾游旅游攻略set和map的区别&#xff1a;set的元素是一个数据&#xff0c;map则是两个元素&#xff08;一个pair&#xff09; unordered_map<type1, type2> 无序映射&#xff0c;是按第一个哈希键来进行检索的。 线性容器&#xff1a;vector、string、list 树形容器&#xff1a;se…

set和map的区别:set的元素是一个数据,map则是两个元素(一个pair)

unordered_map<type1, type2> 无序映射,是按第一个哈希键来进行检索的。

线性容器:vector、string、list

树形容器:set、multiset、map、multimap

线性模拟树:priority_queue

散列容器:unordered_set、unordered_map

unordered_map 对象创建,代码见下:

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {// 1 默认构造函数unordered_map<int, int> m1;cout << "m1: ";printUMap(m1);// 2 初始化列表unordered_map<int, int> m2_1 = {pair<int, int>(1, 10),pair<int, int>(5, 13),pair<int, int>(2, 12),pair<int, int>(4, 19),};cout << "m2_1: ";printUMap(m2_1);unordered_map<int, int> m2_2 ({pair<int, int>(1, 10),pair<int, int>(5, 13),pair<int, int>(2, 12),pair<int, int>(4, 19),});cout << "m2_2: ";printUMap(m2_2);// 3 迭代器unordered_map<int, int> m3(m2_1.begin(), m2_1.end());cout << "m3: ";printUMap(m3);// 4 拷贝构造unordered_map<int, int> m4(m2_2);cout << "m4: ";printUMap(m4);return 0;
}

unordered_map 赋值操作,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {// 2 初始化列表unordered_map<int, int> m1 = {pair<int, int>(1, 10),pair<int, int>(5, 13),pair<int, int>(2, 12),pair<int, int>(4, 19),};cout << "m1: ";printUMap(m1);// 1 = 对象unordered_map<int, int> m2;m2 = m1;cout << "m2: ";printUMap(m2);return 0;
}

unordered_map 大小操作,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {unordered_map<int, int> m;cout << "empty: " << m.empty() << endl;cout << "size: " << m.size() << endl;m = {pair<int, int>(1, 10),pair<int, int>(5, 13),pair<int, int>(2, 12),pair<int, int>(4, 19),};cout << "empty: " << m.empty() << endl;cout << "size: " << m.size() << endl;return 0;
}

unordered_map 数据插入,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {unordered_map<int, int> m;// 1 m.insert(pair<int, int>(2, 45));printUMap(m);// 2 m.insert(make_pair(4, 56)); // 函数重载printUMap(m);// 3m.insert(unordered_map<int, int>::value_type(5, 78));printUMap(m);// 4m[88] = 6; // 运算符重载printUMap(m);// 5pair<unordered_map<int, int>::iterator, int> ret = m.insert(make_pair(4, 19));cout << "insert: " << ret.second; // 这里的话,如果是已有的key,就会显示插入失败// 6m[5] = 55; // 这种方式的话,就可以直接修改,也会存在下面的第七种情况,第七种方式便不是太好了// 7m[0];printUMap(m);return 0;
}

unordered_map 数据查找,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {unordered_map<int, int> m;m[1] = 45;m[3] = 23;m[6] = 55;m[2] = 90;for (int i = 0; i <= 4; ++i) {unordered_map<int, int>::iterator it = m.find(i);if (it != m.end()) {cout << "找到键值对:" << it->first << endl;}else {cout << "未找到键值对" << endl;}}return 0;
}

unordered_map 数据删除,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {unordered_map<int, int> m;m[1] = 45;m[3] = 23;m[6] = 55;m[2] = 90;// 1m.erase(2);printUMap(m);// 2 迭代器m.erase(m.begin());printUMap(m);// 3 m.erase(m.begin(), m.end());printUMap(m);// 4m[8] = 55;m[7] = 90;printUMap(m);m.clear();printUMap(m);return 0;
}

unordered_map 数据修改,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {unordered_map<int, int> m;m[1] = 45;m[3] = 23;m[6] = 55;m[2] = 90;printUMap(m);m[3] = 33;printUMap(m);m[2]++;printUMap(m);return 0;
}

unordered_map 数据统计,代码见下

#include<iostream>
#include<unordered_map>using namespace std;void printUMap(const unordered_map<int, int>& m) {for (unordered_map<int, int>::const_iterator it = m.begin(); it != m.end(); it++) {cout << "key = " << it->first << " " << "value = " << it->second << endl;}cout << "---------------------------" << endl;
}int main() {unordered_map<int, int> m;m[1] = 45;m[3] = 23;m[6] = 55;m[2] = 90;for (int i = 0; i <= 3; ++i) {cout << i << "出现次数为:" << m.count(i) << endl;}unordered_multimap<int, int> mm = {pair<int, int>(3, 4),pair<int, int>(3, 7),pair<int, int>(2, 3),pair<int, int>(1, 9),};for (int i = 0; i <= 3; ++i) {cout << i << "出现次数为:" << mm.count(i) << endl;}return 0;
}

代码练习 1 对应力扣,四数相加,代码见下

class Solution {
public:int fourSumCount(vector<int>& nums1, vector<int>& nums2, vector<int>& nums3, vector<int>& nums4) {unordered_map<int, int> hash;for(int i=0; i<nums1.size(); ++i){for(int j=0; j<nums2.size(); ++j){hash[-(nums1[i] + nums2[j])]++;}}int ans = 0;for(int k=0; k<nums3.size(); ++k){for(int l=0; l<nums4.size(); ++l){ans += hash[nums3[k] + nums4[l]];}}return ans;}
};

代码练习 2 对应力扣和为k的子数组,代码见下

class Solution {
public:int subarraySum(vector<int>& nums, int k) {unordered_map<int, int> cnt;int ans = 0;int pre = 0;cnt[pre]++;for(int i=0; i<nums.size(); ++i){pre = pre + nums[i];ans += cnt[pre - k];cnt[pre]++;}return ans;}
};

http://www.dtcms.com/wzjs/213373.html

相关文章:

  • 做采集网站赚钱百度网站app
  • 我的世界做图片的网站今日北京新闻
  • 做英文兼职的网站免费二级域名注册网站
  • 对于职业规划做的好的网站百度指数移动版
  • 重庆免费建站站长工具日本
  • 昆明网站建设推广百度竞价排名背后的伦理问题
  • 顺义哪里有做网站设计的seo竞价培训
  • 郑州富士康车间照片天津seo数据监控
  • 张家界市建设网站成人本科
  • 河北网站建设价格大全免费b站网页推广
  • 网站验证码怎么做的百度官网推广平台电话
  • 重庆市政府网站管理办法数据分析平台
  • 深圳网站建设小程序网上接单平台
  • 门户网站开发技术 知乎网站注册域名
  • 寻花问柳-专注做一家男人的网站产品网络营销策划方案
  • 西安网站建设技术外包谷歌独立站
  • flash网站怎么做百度指数数据分析平台
  • 网站建设公司海南网络优化seo是什么工作
  • 网站后台管理员怎么做做网站推广好做吗
  • 上海建设网站制作seo网站关键词优化价格
  • 网页项目策划书模板东莞seo优化
  • 如何把网站做成app爱站关键词挖掘
  • 上海网站建设费用多少钱网络营销推广方式包括
  • wordpress黑客seo网站排名优化案例
  • 让你做一个旅游网站你会怎么做百度搜索软件
  • 网站后台发文章图片链接怎么做图片百度搜索
  • 如何做推广网站seo概念的理解
  • 郑州第一附属医院不孕不育科合肥seo排名扣费
  • 常州做网站的公司代运营哪家比较可靠
  • 淮北濉溪县建网站seo快速排名软件网址