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

企业网站变成app的方法江苏网站推广公司

企业网站变成app的方法,江苏网站推广公司,怎样做网络推广赚钱,企业管理咨询是做什么的视频讲解 哈希 双向链表 为什么要用双向链表? 快速删除节点(O(1)) 如果是单链表的话,删除一个节点时,需要从头遍历,找到前驱节点,才能修改 prev->next,导致 O(n)…

视频讲解

哈希 + 双向链表

为什么要用双向链表?

快速删除节点(O(1))

如果是单链表的话,删除一个节点时,需要从头遍历,找到前驱节点,才能修改 prev->next,导致 O(n) 的时间复杂度

双向链表存储了两个指针,一个指针指向下一个节点,另一个指针指向上一个节点(前驱指针)。所以我们可以根据前驱指针快速找到上一个节点,然后移除掉当前节点。

demo:

class LRUCache {
public:struct Node{int key,val;Node *prev,*next;Node(int k,int v) : key(k) , val(v) , prev(nullptr) , next(nullptr){}};map<int,Node*>mp;Node *L,*R; //双哨兵int n; //LRU的总数//创建操作LRUCache(int capacity) {n = capacity;L = new Node(-1,-1);R = new Node(-1,-1);L->next = R;R->prev = L;}//获取值操作 (获得值的时候需要注意:如果有值存在哈希表中的话,那么就要将这个值放在最新的地方)//比如: L | 2 1 4 | R //我们查询1这个数,那么查完后需要变成: L | 2 4 1 | R int get(int key) {if(mp.count(key)){Node* node = mp[key];remove(node); //在链表中移除该节点 通过双向指针移除insert(node->key,node->val); // 在链表中插入该节点return node->val;}else{return -1;}}//插入操作void put(int key, int value) {if(mp.count(key)){Node* node = mp[key];remove(node);insert(key,value); //这里需要用给的key和value而不是node->key和node->val(因为可能插入的是新的值)}else{if(mp.size() == n){Node* node = L->next; //满了,需要移除的节点remove(node);insert(key,value);}else{insert(key,value);}}}//以下为自定义新增函数 remove是移除节点的函数 insert是插入节点的函数//同时在链表和哈希表中删除nodevoid remove(Node* node){Node* pre = node->prev;Node* nxt = node->next;pre->next = nxt;nxt->prev = pre;mp.erase(node->key);}//同样要同时操作链表和哈希表void insert(int key,int val){Node* node = new Node(key,val);Node* pre = R->prev;//这里是最后一个插入的数//向右pre->next = node;node->next = R;//向左node->prev = pre;R->prev = node;mp[key] = node;}};/*** Your LRUCache object will be instantiated and called as such:* LRUCache* obj = new LRUCache(capacity);* int param_1 = obj->get(key);* obj->put(key,value);*/

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

相关文章:

  • 网站建设方案书人员资金安排网站优化排名方案
  • dw做网站的流程推广自己的产品
  • 杭州知名的企业网站建设专业网络推广公司排名
  • 查建设标准网站推广链接怎么自己搞定
  • .简述网站开发的流程推广价格一般多少
  • 电子商务网站建设完整案例教程s2sh pdf下载沧州网站建设推广
  • 做外贸上什么网站电脑培训班零基础
  • 网站制作外包是怎么做的百度网站怎么做
  • 越秀网站建设哪家好营销手段有哪些
  • 下载中国建设银行官网站优化网站页面
  • 网站建设华科技公司佛山网站优化软件
  • 中央人民政府门户网站建设理念网站推广公司哪家好
  • 做愛黄色视频网站福利网络宣传的方法渠道
  • 江苏工程建设交易信息网站软件推广平台
  • 北京市住房和城乡建设厅官方网站关键词竞价排名名词解释
  • 武汉网站建设 江网科技高权重友情链接
  • 阿里云做外贸网站网站友情链接检测
  • 定制型网站电子商务网站设计方案
  • 佛山做企业网站公司百度快照官网登录
  • 江门鹤山最新消息新闻搜索引擎优化自然排名
  • 做外贸网站卖什么东西好上海seo优化公司bwyseo
  • 免费自制安卓app软件seo排名赚下载
  • 发生太多重定位wordpress太原seo软件
  • 捷克注册公司网站电商网络推广
  • 做微电网的公司网站如何在百度推广自己
  • 做网站挂靠google关键词工具
  • 高端网站设计哪家公司好推广之家
  • 青岛网站建站公司网站群发推广软件
  • 上海华亮建设集团网站百度问答app下载
  • 推荐广东中山网站建设郑州疫情最新动态