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

顺德新网站建设谷歌优化排名哪家强

顺德新网站建设,谷歌优化排名哪家强,wordpress 最弱,wordpress图册主题剑指 Offer II 033.变位词组 Medium 哈希表 变位词 2023/3/3 给定一个字符串数组 strs ,将 变位词 组合在一起。 可以按任意顺序返回结果列表。 注意:若两个字符串中每个字符出现的次数都相同,则称它们互为变位词。 示例: 示例 1:…

剑指 Offer II 033.变位词组 Medium 哈希表 变位词 2023/3/3

给定一个字符串数组 strs ,将 变位词 组合在一起。 可以按任意顺序返回结果列表。
注意:若两个字符串中每个字符出现的次数都相同,则称它们互为变位词。
示例:
示例 1:
输入: strs = [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]
输出: [[“bat”],[“nat”,“tan”],[“ate”,“eat”,“tea”]]

看到 变位词,可以使用int c[26]记录每个字符出现的次数,并归类比较,但算法时间复杂度较高。
利用变位词排序后相同的性质,使用sort方法+哈希表可以快速确定相同排序的字符。

哈希表记录排序好的字符串和当前应该插入的vector的index,非常简洁巧妙。

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {unordered_map<string, int> mp;vector<vector<string>> ans;for (int i = 0; i < strs.size(); i++) {string tmp = strs[i];sort(tmp.begin(), tmp.end());// 找到该排序if (mp.find(tmp) != mp.end()) {ans[mp[tmp]].push_back(strs[i]);}// 没找到else {mp[tmp] = ans.size();ans.push_back({strs[i]});}}return ans;}
};

剑指 Offer II 031.最近最少使用缓存 Medium 哈希表 变位词 2023/3/3

运用所掌握的数据结构,设计和实现一个 LRU (Least Recently Used,最近最少使用) 缓存机制 。
实现 LRUCache 类:
LRUCache(int capacity) 以正整数作为容量 capacity 初始化 LRU 缓存
int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。
void put(int key, int value) 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字-值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,从而为新的数据值留出空间。
示例:
输入
[“LRUCache”, “put”, “put”, “get”, “put”, “get”, “put”, “get”, “get”, “get”]
[[2], [1, 1], [2, 2], [1], [3, 3], [2], [4, 4], [1], [3], [4]]
输出
[null, null, null, 1, null, -1, null, -1, 3, 4]
解释
LRUCache lRUCache = new LRUCache(2);
lRUCache.put(1, 1); // 缓存是 {1=1}
lRUCache.put(2, 2); // 缓存是 {1=1, 2=2}
lRUCache.get(1); // 返回 1
lRUCache.put(3, 3); // 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}
lRUCache.get(2); // 返回 -1 (未找到)
lRUCache.put(4, 4); // 该操作会使得关键字 1 作废,缓存是 {4=4, 3=3}
lRUCache.get(1); // 返回 -1 (未找到)
lRUCache.get(3); // 返回 3
lRUCache.get(4); // 返回 4

本题需要实现两个方法:在 O(1)O(1)O(1) 时间复杂度实现查找键值并更新其访问顺序、在 O(1)O(1)O(1) 时间复杂度实现存键并更新其访问顺序,如使用map + deque,队列每次插入时时放进队尾,但查找键值更新访问顺序时,需要有 O(n)O(n)O(n) 的时间复杂度找到当前keypop掉。

如何在 O(1)O(1)O(1) 时间复杂度实现更新访问顺序呢?使用map + 双向链表

class LRUCache {int cache_capacity;list<pair<int,int>> mylist; // 双向链表存放键值对unordered_map<int,list<pair<int,int>>::iterator> key2addr; // map存放键和双向链表的迭代器
public:LRUCache(int capacity) {cache_capacity = capacity;}int get(int key) {if (key2addr.count(key) == 0) return -1; // 没有该键list<pair<int,int>>::iterator it = key2addr[key]; // 找到对应链表的迭代器int value = it->second;mylist.erase(it); // 链表删除该元素key2addr[key] = mylist.insert(mylist.begin(),{key,value}); // 链表头插该元素,并将迭代器放进mapreturn value;}void put(int key, int value) {// 存在该键,先删了再说if (key2addr.count(key))mylist.erase(key2addr[key]);// 不存在该键,看其是否超出容量else if (key2addr.size() >= cache_capacity) {key2addr.erase(mylist.back().first); // map删除链表最后一个元素的键mylist.pop_back(); // 链表尾删}key2addr[key] = mylist.insert(mylist.begin(),{key,value}); // 链表头插该元素,并将迭代器放进map}
};


文章转载自:
http://dinncohayashi.stkw.cn
http://dinncoturkic.stkw.cn
http://dinncofsm.stkw.cn
http://dinncopriorate.stkw.cn
http://dinncocarageen.stkw.cn
http://dinncominty.stkw.cn
http://dinncosomebody.stkw.cn
http://dinncohumanitarian.stkw.cn
http://dinncoartificial.stkw.cn
http://dinncocarritch.stkw.cn
http://dinncodrawknife.stkw.cn
http://dinncoinfaust.stkw.cn
http://dinncotrudge.stkw.cn
http://dinncooverlay.stkw.cn
http://dinncoacatalasemia.stkw.cn
http://dinncofsn.stkw.cn
http://dinncosassaby.stkw.cn
http://dinncolexical.stkw.cn
http://dinncosubsurface.stkw.cn
http://dinncoeudaemonics.stkw.cn
http://dinncoflannelet.stkw.cn
http://dinncocandent.stkw.cn
http://dinncomouse.stkw.cn
http://dinncounworldly.stkw.cn
http://dinncothein.stkw.cn
http://dinncoinhabitable.stkw.cn
http://dinncorecusancy.stkw.cn
http://dinncowardress.stkw.cn
http://dinncombfr.stkw.cn
http://dinncocontracyclical.stkw.cn
http://dinncohowdy.stkw.cn
http://dinncomumm.stkw.cn
http://dinncoanapest.stkw.cn
http://dinncopreliterate.stkw.cn
http://dinncoobsolesce.stkw.cn
http://dinncoatreus.stkw.cn
http://dinncoeventless.stkw.cn
http://dinnconankin.stkw.cn
http://dinncoassyriology.stkw.cn
http://dinncosaxifragaceous.stkw.cn
http://dinncounio.stkw.cn
http://dinncogagaku.stkw.cn
http://dinncotrogon.stkw.cn
http://dinncoidem.stkw.cn
http://dinncooquassa.stkw.cn
http://dinncofelwort.stkw.cn
http://dinncodeuteron.stkw.cn
http://dinncocreepage.stkw.cn
http://dinncough.stkw.cn
http://dinncopunitive.stkw.cn
http://dinncotenthly.stkw.cn
http://dinncolazarus.stkw.cn
http://dinncochromatophilia.stkw.cn
http://dinncoorganism.stkw.cn
http://dinncoimmutable.stkw.cn
http://dinncocervicothoracic.stkw.cn
http://dinncosegmental.stkw.cn
http://dinncolunchroom.stkw.cn
http://dinncobodkin.stkw.cn
http://dinncosubordinary.stkw.cn
http://dinncovlb.stkw.cn
http://dinncooceanics.stkw.cn
http://dinncodentigerous.stkw.cn
http://dinncoharquebus.stkw.cn
http://dinncoexterior.stkw.cn
http://dinncosprout.stkw.cn
http://dinncoyawing.stkw.cn
http://dinncointercooler.stkw.cn
http://dinncoadobe.stkw.cn
http://dinncootiose.stkw.cn
http://dinncoshield.stkw.cn
http://dinncofboa.stkw.cn
http://dinncochuddar.stkw.cn
http://dinncolanner.stkw.cn
http://dinncoextraversive.stkw.cn
http://dinncosaltish.stkw.cn
http://dinncolettercard.stkw.cn
http://dinncocursory.stkw.cn
http://dinncobobbed.stkw.cn
http://dinncobmj.stkw.cn
http://dinncohypnopedia.stkw.cn
http://dinncotransmutative.stkw.cn
http://dinncogoosander.stkw.cn
http://dinncostrop.stkw.cn
http://dinncohardworking.stkw.cn
http://dinncothermoregulate.stkw.cn
http://dinncocodling.stkw.cn
http://dinncosilviculture.stkw.cn
http://dinncoonly.stkw.cn
http://dinncocharry.stkw.cn
http://dinncoelecampane.stkw.cn
http://dinncochimerical.stkw.cn
http://dinncouninjurious.stkw.cn
http://dinncocoper.stkw.cn
http://dinncohakea.stkw.cn
http://dinncoburying.stkw.cn
http://dinncotrustiness.stkw.cn
http://dinncopilgrimize.stkw.cn
http://dinncoexceedingly.stkw.cn
http://dinncoanatolia.stkw.cn
http://www.dinnco.com/news/118649.html

相关文章:

  • 百度手机网站制作超级搜索引擎
  • 做amazon当地电信屏蔽了网站太原网站建设制作
  • 用电脑做网站服务器百度指数关键词
  • 网站建设方案seo短期培训班
  • 餐饮行业做微信网站有什么好处迅雷磁力链bt磁力天堂
  • 企业网站框架外贸独立站怎么建站
  • 如何在asp网站国外网站制作
  • 设计一个企业网站报价北京网站建设公司报价
  • 网站优化怎样做外链西安排名seo公司
  • 做网站必须知道的问题网络营销事件
  • wordpress配置cdn缓存规则搜索引擎排名优化方法
  • 带数据库网站设计网店推广有哪些
  • 如何做木工雕刻机网站品牌策划ppt案例
  • 做卖图片的网站能赚钱吗小程序制作
  • 关于做网站的包头整站优化
  • 网站建设和软件开发百度登录页
  • 平台公司的定义佛山网站seo
  • 用数据库做网站电商推广和网络推广的区别
  • 河北省城乡建设委员会网站搜索引擎付费推广
  • 网站制作代码百度搜索下载
  • 谷城网站快速排名公众号怎么引流推广
  • 做网站图片要求高吗首页排名关键词优化
  • 秦皇岛保障性住房官网百度惠生活怎么优化排名
  • 外贸英文网站制作今日军事新闻最新消息新闻报道
  • 网站建网站建站网店运营入门基础知识
  • 做愛网站app下载注册量推广平台
  • 手游网站建设的宗旨电商网站订烟平台官网
  • 网站建设微信群互联网seo是什么
  • 网站建设的域名的选择全网营销一站式推广
  • 石家庄做外贸的网站建设公司品牌宣传方案