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

网站建设费需要摊销吗佛山网站建设企业报价

网站建设费需要摊销吗,佛山网站建设企业报价,外贸网络营销实战,ppt模板清新淡雅免费下载知识概览(哈希表) 哈希表可以将一些值域较大的数映射到较小的空间内,通常用x mod 质数的方式进行映射。为什么用质数呢?这样的质数还要离2的整数幂尽量远。这可以从数学上证明,这样冲突最小。取余还是会出现冲突情况。…

知识概览(哈希表)

  • 哈希表可以将一些值域较大的数映射到较小的空间内,通常用x mod 质数的方式进行映射。为什么用质数呢?这样的质数还要离2的整数幂尽量远。这可以从数学上证明,这样冲突最小。
  • 取余还是会出现冲突情况。怎么解决冲突呢,有两种方式:开放寻址法和拉链法。
  • 算法题中哈希表的题目可能会有添加、查找操作,删除操作较少,删除用逻辑删除,即用一个bool数组来标识出哪些数已经被删除了。

例题展示

题目链接

https://www.acwing.com/problem/content/842/

代码(拉链法)

#include <iostream>
#include <cstring>using namespace std;const int N = 100010;int h[N], e[N], ne[N], idx;void insert(int x)
{int k = (x % N + N) % N;e[idx] = x;ne[idx] = h[k];h[k] = idx++;
}bool query(int x)
{int k = (x % N + N) % N;for (int i = h[k]; i != -1; i = ne[i])if (e[i] == x)return true;return false;
}int main()
{int n;scanf("%d", &n);memset(h, -1, sizeof h);while (n--){char op[2];int x;scanf("%s%d", op, &x);if (*op == 'I') insert(x);else{if (query(x)) puts("Yes");else puts("No");}}return 0;
}

代码(开放寻址法)

#include <iostream>
#include <cstring>using namespace std;const int N = 200003, null = 0x3f3f3f3f;  // 数组长度设置为题目数据范围的2~3倍且是质数int h[N];int find(int x)
{int k = (x % N + N) % N;while (h[k] != null && h[k] != x){k++;if (k == N) k = 0;}return k;
}int main()
{int n;scanf("%d", &n);memset(h, 0x3f, sizeof h);while (n--){char op[2];int x;scanf("%s%d", op, &x);int k = find(x);if (*op == 'I') h[k] = x;else{if (h[k] != null) puts("Yes");else puts("No");}}return 0;
}

知识概览(字符串哈希)

  • 字符串哈希也称为字符串前缀哈希法,它先预处理出所有前缀的哈希值。
  • 主要思想是用一个P进制的角度把一个字符串看成一个数字。例如一个字符串"ABCD",假设A为1,B为2,C为3,D为4,则其哈希值为\left ( 1 \times P^3 + 2 \times P^2 + 3 \times P^1 + 4 \times P^0 \right )\mod Q,其中P可以取131或13331,Q可以取2^{64},这些是经验值,99.99%的情况下不会出现冲突,不解决冲突。
  • 字符串哈希用来快速判断两个字符串是不是相等。KMP算法可以求循环节,除此之外,KMP算法不如字符串哈希,字符串哈希确实简单直接。

例题展示

题目链接

https://www.acwing.com/problem/content/843/

题解

不用考虑取余,溢出相当于取余2^{64}

代码

#include <iostream>using namespace std;typedef unsigned long long ULL;const int N = 100010, P = 131;int n, m;
char str[N];
ULL h[N], p[N];ULL get(int l, int r)
{return h[r] - h[l - 1] * p[r - l + 1];
}int main()
{scanf("%d%d%s", &n, &m, str + 1);p[0] = 1;for (int i = 1; i <= n; i++){p[i] = p[i - 1] * P;h[i] = h[i - 1] * P + str[i];}while (m--){int l1, r1, l2, r2;scanf("%d%d%d%d", &l1, &r1, &l2, &r2);if (get(l1, r1) == get(l2, r2)) puts("Yes");else puts("No");}return 0;
}

参考资料

  1. AcWing算法基础课
http://www.yayakq.cn/news/772614/

相关文章:

  • 网站域名不想实名认证c语言程序设计网站
  • 怎样查到一些做品牌包的网站物联网应用技术就业方向及前景
  • 网站建设人才招聘百度网站建设及推广
  • 县文化馆网站建设方案wordpress博客模板推荐
  • 站长平台官网wordpress 删除的模板文件在哪
  • 企业网站推广的方法有?优化设计电子版在哪找
  • 成考做那个网站的题比较好wordpress速度主题
  • 龙华建设局网站个人网站图片加载慢
  • 做企业展示网站需要多少钱wordpress爬取文章插件
  • 兰州医院网站制作网站新类型
  • 广州市医院网站建设哪家好wordpress做流量站
  • 网站进行诊断还有多少用.net做网站的
  • 高端网站建设磐石网络好2021网络营销成功案例
  • 丰涵网站建设横沥东莞网站建设
  • 公司购买网站建设费用会计分录wordpress 图片库
  • 电影分享网站源码流量查询网站
  • 自己怎么做网址开网站怎么把网址做成网页链接
  • 做网站开发的商标注册多少类网站建设与管理简答题
  • 网站建设和网站设计的区别如何做好校园推广
  • 旅游公司网站建设合同书网站挂服务器后图片不显示
  • 优化网站内链项目网络图关键路径计算
  • 做电影网站用什么服务器比较好易思企业网站破解版
  • 大庆市萨尔图区建设局网站长沙网站seo外包
  • 一等一网站建设网站建设对图片有哪些要求
  • 做一下网站网站好的网站设计制作
  • 网站维护主要做什么制作网站的软件有那个免费
  • html生成网站专业服务网站建设
  • 网站企业备案网站分哪些种类
  • 网站图片引导页怎么做沧州市住房和城乡建设局网站
  • 甘肃省住房和城乡建设厅安置局网站网页设计培训学校多少