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

org已经备案的网站seo站长论坛

org已经备案的网站,seo站长论坛,seo优化网站,做网站首页代码242.有效的字母异位词 刚学哈希表想着使用unordered_set来实现,结果无法通过,原因是对字母异位词理解有问题,字母异位词是通过重新排列不同单词或短语的字母而形成的单词或短语,并使用所有原字母一次。对字母出现的次数有要求&am…

242.有效的字母异位词

刚学哈希表想着使用unordered_set来实现,结果无法通过,原因是对字母异位词理解有问题,字母异位词是通过重新排列不同单词或短语的字母而形成的单词或短语,并使用所有原字母一次。对字母出现的次数有要求,无法使用unordered_set

bool isAnagram(string s, string t) {std::unordered_set<char> _slist;for(int i = 0; i < s.size(); i++){_slist.insert(s[i]);}std::unordered_set<char> _tlist;for(int j = 0; j < t.size(); j++){_tlist.insert(t[j]);}bool flag = _slist == _tlist;if(flag){return s.size() == t.size();}else{return flag;}}

正确方法 1:学习使用数组来做哈希表

bool isAnagram(string s, string t) {int record[26] = {0};for(int i = 0; i < s.size(); i++){record[s[i] - 'a']++;}for(int j = 0; j < t.size(); j++){record[t[j] - 'a']--;}for(int k = 0; k < 26; k++){if(record[k] != 0){return false;}}return true;}

正确方法2: 利用multiset特性(值有序并且可以重复)

bool isAnagram(string s, string t) {std::multiset<char> s_set;for(int i = 0; i < s.size(); i++){s_set.insert(s[i]);}std::multiset<char> t_set;for(int j = 0; j < t.size(); j++){t_set.insert(t[j]);}return s_set == t_set;}

349.两个数组的交集

vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {vector<int> result;std::unordered_set<int> nums1_set;for(int i = 0; i < nums1.size(); i++){nums1_set.insert(nums1[i]);}std::unordered_set<int> nums2_set;for(int j = 0; j < nums2.size(); j++){nums2_set.insert(nums2[j]);}for(const auto& elem : nums1_set){if(nums2_set.find(elem) != nums2_set.end()){result.push_back(elem);}}return result;
}

202.快乐数

练习如何进行单数之和计算,以及如何判断退出机制

// 如果这个sum曾经出现过,说明已经陷入了无限循环了,立刻return false
    int getSum(int n){int sum = 0;do{int yushu = (n % 10) * (n % 10);sum += yushu;n = n / 10;}while(n != 0);return sum;}bool isHappy(int n) {std::unordered_set<int> result;while(1){int sum = getSum(n);if(sum == 1){return true;}else{if(result.find(sum) != result.end()){return false;}else{result.insert(sum);}}n = sum;}}

1.两数之和

//a暴力解法

    vector<int> twoSum(vector<int>& nums, int target) {vector<int> result;for(int i = 0; i < nums.size() - 1; i++){for(int j = i+1; j < nums.size(); j++){if(nums[i]+nums[j] == target){result.push_back(i);result.push_back(j);return result;}}}return result;}

//b学习使用map对象,主要了解何时使用哈希法

    vector<int> twoSum(vector<int>& nums, int target) {std::unordered_map<int,int> nums_map;for(int i = 0; i < nums.size(); i++){if(nums_map.find(target - nums[i]) != nums_map.end()){return {nums_map.find(target-nums[i])->second, i};}else{nums_map.insert(pair<int,int>(nums[i], i));}}return {};}

http://www.shuangfujiaoyu.com/news/9020.html

相关文章:

  • 武汉市网站建设宁波seo外包
  • 双语版网站案例如何介绍自己设计的网页
  • 企业网站asp模板app推广接单平台
  • 网站建设感恩seo查询seo
  • wordpress导入文章seo外链优化
  • 永川网站制作联系电话chrome官方下载
  • 有没有做高仿手表的网站潍坊网站建设优化
  • 哪个网站可以做微信头图百度网站推广教程
  • 电商网站活动推广东莞做一个企业网站
  • 济南网站设计建设公司广告电话
  • 网站怎么优化呢专业seo公司
  • 哈尔滨专业网站制作信息推广平台有哪些
  • 广东企业微信网站开发百度数据分析工具
  • 临朐县网站建设今日新闻国际头条新闻
  • 网站建设软件有哪些国际最新十大新闻事件
  • 政府网站建设培训讲话营销思路八大要点
  • 可以做3d电影网站新平台推广赚钱
  • 怎么把网站做漂亮网站建设与营销经验
  • 购物网站首页模板网络营销策划步骤
  • 网站大全免费入口百度商城app下载
  • html静态网页作业资阳地seo
  • TP5.1做的网站首页被挂马原因发表文章的平台有哪些
  • 网站做直播需要办理什么证小红书推广策略
  • ubuntu下做网站百度竞价推广关键词优化
  • 东莞注册有限公司流程及费用seo包括什么
  • 网站正在建设中 熟女手机网站免费客服系统
  • 网站维护和制作怎么做会计分录中国seo排行榜
  • 网站商品支付怎么做百家号排名
  • 建网站排名郑州seo排名哪有
  • 绍兴建设局网站首页手机网站关键词seo