尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

字符串基础

字符串基础
📅 发布时间:2026/6/19 23:06:54

字符串Hash

我们定义一个把字符串映射到整数的函数 \(f\) ,这个 \(f\) 称为是 \(Hash\) 数。

我们希望这个函数 \(f\) 可以方便地帮我们判断两个字符串是否相等。

基础公式:

$f(s)= {\textstyle \sum_{i=1}^{l}} s[i] \times b^{l-i} $ \((mod\) \(m)\)**

哈希冲突

指在一定模数下,两个不同的字符串映射到相同\(Hash\)值。

我们设 \(Hash\) 的取值空间(所有可能出现的字符串的数量)为\(d\),计算次数(要计算的字符串数量)为\(n\)。

则 \(Hash\) 冲突的概率为:

\(p(n,d)=1-\frac{d!}{d^n(d-n)!}\approx 1-exp(-\frac{n(n-1)}{2d})\)

赛场常用技巧

  1. 自然溢出:使用\(unsigned\) \(long\) \(long\)定义\(Hash\)值变量,此时模数为\(2^{64}\),优点是方便、代码简单,缺点是极其容易被卡,详见oi-wiki。

  2. 双值\(Hash\):同时使用两种不同模数求出一个字符串的\(Hash\)值。当两个字符串相同时,两值必定都相同。优点是不容易被卡、应对赛场环境足以,缺点是代码复杂。

  3. 多次询问\(Hash\)值:令\(f_i(s)\)表示字符串\(s\)的长度为\(i\)的前缀的\(Hash\)值,可以得到\(f(s[l..r])=f_r(s)-f_{l-1}(s)\times b^{r-l+1}\)成立。

  4. 二分求最长公共子字符串

常用\(Hash\)值

  1. 998244353

  2. 1000000007

  3. 19260817

  4. 自然溢出

相关新闻

  • Kubernetes 进阶实战:CRD、Gateway API 与优先级调度 - 实践
  • 单片机 -- USART总线 - 实践
  • 题解:P11667 [USACO25JAN] Astral Superposition B

最新新闻

  • 2026萍乡2026正规漏水检测维修公司精选口碑榜TOP5权威推荐-精准定位检测漏水点-专业防水补漏堵漏维修、卫生间/厨房/屋顶/天沟/地下室/阳台防水漏水检测维修 - 安佳防水
  • 深入解析LPC2478:ARM7TDMI-S内核、双AHB总线与关键外设实战
  • 5倍效率提升:Dify官方插件集的AI集成革命
  • 2026潮州漏水检测维修精选优质服务商TOP5推荐!卫生间漏水/厨房漏水/屋顶天花板漏水/阳台漏水/地下室漏水防水补漏检测维修-正规防水补漏公司优选口碑榜测评推荐 - 即刻修防水
  • 2026年天津GEO优化服务商推荐指南 - GEO优化
  • 2026年近期陕西消防:专业消防技术服务商选择与推荐 - 品牌鉴赏官2026

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号