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

做的比较好的时尚网站吴忠网络推广怎么做

做的比较好的时尚网站,吴忠网络推广怎么做,莱州木籽网络科技有限公司,制作作品的软件哈希表常用数据结构 查询一个元素是否出现过,或者一个元素是否在集合里的时候,就要第一时间想到哈希法。 哈希法也是空间换时间,因为我们要使用额外的数组,set或者是map来存放数据,才能实现快速的查找。 集合底层实现…

哈希表常用数据结构

查询一个元素是否出现过,或者一个元素是否在集合里的时候,就要第一时间想到哈希法。
哈希法也是空间换时间,因为我们要使用额外的数组set或者是map来存放数据,才能实现快速的查找。

集合底层实现key是否有序数值是否可以重复能否更改数值查询效率增删效率
std::set红黑树有序O(log n)O(log n)
std::multiset红黑树有序O(logn)O(logn)
std::unordered_set哈希表无序O(1)O(1)
映射底层实现是否有序数值是否可以重复能否更改数值查询效率增删效率
std::map红黑树key有序key不可重复key不可修改O(logn)O(logn)
std::multimap红黑树key有序key可重复key不可修改O(log n)O(log n)
std::unordered_map哈希表key无序key不可重复key不可修改O(1)O(1)
  1. 一般使用unordered_set、unordered_map
  2. 需要有序时使用set、map
  3. 需要有序、重复时使用multiset、multimap

242.有效的字母异位词

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

示例 1:
输入: s = “anagram”, t = “nagaram”
输出: true

示例 2:
输入: s = “rat”, t = “car”
输出: false

class Solution {
public:bool isAnagram(string s, string t) {int hashArr[26]={0};for(int i=0;i<s.size();i++){hashArr[s[i]-'a']++;}for(int i=0;i<t.size();i++){hashArr[t[i]-'a']--;}for(int i=0;i<26;i++){if(hashArr[i]!=0) return false;}return true;}
};

383. 赎金信

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。
如果可以,返回 true ;否则返回 false 。
magazine 中的每个字符只能在 ransomNote 中使用一次。

示例 1:
输入:ransomNote = “a”, magazine = “b”
输出:false

示例 2:
输入:ransomNote = “aa”, magazine = “ab”
输出:false

示例 3:
输入:ransomNote = “aa”, magazine = “aab”
输出:true

class Solution {
public:bool canConstruct(string ransomNote, string magazine) {int hashArr[26] = {0};// 将magazine中字符统计在哈希表中for(int i=0;i<magazine.size();i++){hashArr[magazine[i]-'a']++;}// for(int i=0;i<ransomNote.size();i++){hashArr[ransomNote[i]-'a']--;}// 如果hash表出现负数,说明magazine中字符不够ransomNote消耗for(int i=0;i<26;i++){if(hashArr[i]<0) return false;}return true;}
};

349. 两个数组的交集

示例 1:
输入:nums1 = [1,2,2,1], nums2 = [2,2]
输出:[2]

示例 2:
输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出:[9,4]
解释:[4,9] 也是可通过的

class Solution {
public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {unordered_set<int> res;// 将nums1存入哈希表unordered_set<int> hashSet(nums1.begin(),nums1.end());// 遍历nums2,在哈希表中查找nums2的元素for(int num:nums2){if(hashSet.find(num)!=hashSet.end()){res.insert(num);}}return vector<int>(res.begin(),res.end());}
};

1. 两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。
你可以按任意顺序返回答案。

示例 1:
输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。

示例 2:
输入:nums = [3,2,4], target = 6
输出:[1,2]

示例 3:
输入:nums = [3,3], target = 6
输出:[0,1]

class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int,int> map;for(int i=0;i<nums.size();i++){auto iter = map.find(target-nums[i]);// 找到一对直接返回if(iter != map.end()){return {iter->second,i};}// 插入到map中map.insert(pair<int,int>(nums[i],i));}return {};}
};
http://www.yayakq.cn/news/318172/

相关文章:

  • dede网站暂时关闭广州seo优化电话
  • 网站正在建设中色天使微信公众号怎么上架商品
  • 网站招聘方案怎么做华秋商城
  • 全景网站模版室内装饰设计师证书有用吗
  • 印发网站建设方案服装网站建设企业需求调查
  • flash网站模板中心wordpress 最新主题
  • 平台后期维护关键词优化排名易下拉稳定
  • 东莞企业建站申请多少钱软件开发模型思维导图
  • 行业门户网站开源wordpress腾讯云
  • 海淀公司网站建设方案wordpress前台浏览量插件
  • 体育局网站建设方案国内永久免费crm系统网站推荐大全
  • 福州网站开发公司商业网站开发设计实训总结
  • 网站怎么做中英文切换网站建设中心
  • 网站怎么做 流程图网站定制哪家快
  • 上海关键词优化排名哪家好网站seo检测
  • 成都的网站有哪些下载软件的应用
  • wordpress 整站 数据山西优化公司
  • 网站建设 意识形态设计师做画册必备网站
  • 襄阳建设网站首页拍大师官方网站 图片做视频
  • 网站建设设计技术方案模板手机网站 wordpress
  • 微网站开发用什么技术临沂高端大气网站建设
  • 刷赞网站空间免费群晖根目录wordpress
  • 滨州网站建设电话公司网公司网页设计制作
  • wordpress 获取时间泉州seo代理计费
  • 东乡建设网站网络营销策划方案展示
  • 手机微网站怎么做的超级搜索引擎
  • 做儿童业态招商要去哪些网站邯郸做网站推广
  • 长沙网站排名技术做淘宝联盟必须要有网站吗
  • 学做简单网站视频教程菜谱分享网站开发开题报告
  • 手机网站 自适应wordpress自定义链接后404