后缀数组学习笔记
是这种做法下每次比较两个后缀需要二分哈希单次比较(log⁡)O(logn)总排序需要(log⁡)O(nlogn)次比较因此整体复杂度是(log⁡2)O(nlog2n)的比较慢。考虑能否优化发现直接每个独立比较太慢了由于所有的都在一个字符串上可以考虑倍增的思想。我们倍增字符串长度那么我们可以先得到所有长度为 11 时的排名之后对于长度为 22 时先比较前面一个字符如果相同再比较后面一个字符以此类推。所以做法就是假设我们现在处理长度最长为 22x 时的排名那么先比较两个串的前 x 位如果相等再比较后 x 位。显然这是一个双关键字排序那么就可以直接通过基数排序优化到(log⁡)O(nlogn)了。虽然有其它神秘科技但是这个做法在比赛时应该已经够了也是经典的后缀数组求法。我们用sai​表示排名为 i 的后缀起始位置用rki​表示后缀起始位置为 i 的排名直接根据基数排序即可完成。但是实际上可能需要一些常数优化放一个我写的好像部分处理不是很常规最长公共前缀最长公共前缀也被称为LCP。通过结合后缀数组可以快速处理一个字符串后缀的最长公共前缀查询这也是一个后缀数组的经典应用。一个显然的结论一个后缀肯定和自己字典序排名相邻的后缀的 LCP 最长。假设有一个更长的但排名不是相邻的那么其字典序一定其和相邻的两个之间矛盾即可证得。那么我们可以通过求相邻的情况再进行区间查询得到这一段里面的最小值。显然由于我们保证了相邻每一个都尽量大了最小值也就是其前缀没有变过的最长位置。那么只需要处理出每个相邻的结果之后再使用st 表即可快速查询了。显然相邻的并不难求有非常简单的(log⁡)O(nlogn)写法就是有点麻烦。但是有非常好写的()O(n)做法。设ℎ[]LCP([[]..],[[−1]..])h[i]LCP(s[sa[i]..n],s[sa[i−1]..n])即排名相邻的两个后缀的最长公共前缀长度。对于原串中以位置 i 开头的后缀其排名为 []rk[i]我们想要求出 ℎ[[]]h[rk[i]]。有一个关键性质ℎ[[]]≥ℎ[[−1]]−1h[rk[i]]≥h[rk[i−1]]−1直观理解后缀 [−1..]s[i−1..n] 与排名前一位的后缀 [[[−1]−1]..]s[sa[rk[i−1]−1]..n] 有长度为 ℎ[[−1]]h[rk[i−1]] 的公共前缀。去掉这两个后缀的第一个字符后我们得到后缀 [..]s[i..n] 和后缀 [[[−1]−1]1..]s[sa[rk[i−1]−1]1..n]它们的公共前缀长度至少为 ℎ[[−1]]−1h[rk[i−1]]−1。而后缀 [..]s[i..n] 在排名上可能与后者不相邻但它的排名前一位即 [[]−1]sa[rk[i]−1]的 LCP 长度不会小于这个值。由于每次都只减少一否则都是增加且这个增加上限也是 n 的级别所以时间复杂度()O(n)是一

相关新闻

TDA4系统启动流程

TDA4系统启动流程

一、系统启动流程如下 +------------------------------------------------------------------------+ | TIFS | Main R5 | A53 | +------------------------------------------------------------------------+ | +---…

2026/7/2 3:13:39阅读更多 →
Elasticsearch与kibana

Elasticsearch与kibana

前言 Java中比较流行的搜索引擎是Elasticsearch,传统的数据库搜索,使用like’关键字%’,当内容过多时性能会大大降低,所以Elasticsearch就出现了。 Elasticsearch核心概念 Elasticsearch 是面向文档的分布式搜索引擎&#xff0…

2026/7/2 3:13:39阅读更多 →
临床科研容错归零,三甲医院合规新方案:前置自查筑牢学术安全防线

临床科研容错归零,三甲医院合规新方案:前置自查筑牢学术安全防线

最近学术监督呈现明显新趋势,大量精细化核查案例集中在医学学科带头人、三甲医院资深医师群体。不少深耕临床多年的教授,仅因临床论文图表标注、数据分布等细微瑕疵被公开核查,最终迎来论文撤稿、在研课题冻结、职称晋升暂缓等多重处罚。一、…

2026/7/2 3:13:39阅读更多 →
Dify接入高德地图MCP服务详细配置教程

Dify接入高德地图MCP服务详细配置教程

一、获取高度地图API KEY 1、注册成为开发者 进入高德开放平台:https://lbs.amap.com/ 注册成为开发者,需要实名认证 2、获取应用API Key 控制台-->应用管理-->我的应用 (1)点击创建新应用,弹出新建应用弹窗…

2026/7/2 4:33:45阅读更多 →
ROS2 Jazzy 动作通信 (Action) 完整实战教程(C+++Python 双实现)

ROS2 Jazzy 动作通信 (Action) 完整实战教程(C+++Python 双实现)

一、前言动作通信(Action)是 ROS2 中用于长时间任务交互的通信模型,兼具服务同步应答、话题持续反馈的优势,适用于机械臂运动、导航、累加计算等耗时任务。 本文从零搭建自定义 Action 消息,分别使用 C、Python 实现动…

2026/7/2 4:33:45阅读更多 →
服装缺陷检测:开源模型 vs 自研训练的 ROI 量化决策模型

服装缺陷检测:开源模型 vs 自研训练的 ROI 量化决策模型

引言 在服装制造业中,视觉检测是保障产品质量、降低次品率的关键环节。随着深度学习技术的普及,企业面临一个核心决策:是直接采用成熟的开源视觉检测模型,还是投入资源自研训练专属模型?业界常泛泛而谈“各有优劣”&am…

2026/7/2 4:33:45阅读更多 →
2026 AI直播系统技术深度评测:端到端延迟低于200ms,500路并发架构解析

2026 AI直播系统技术深度评测:端到端延迟低于200ms,500路并发架构解析

当724小时无人值守直播成为电商标配,AI直播系统的技术栈选型正成为决定商家运营效率的核心变量。据艾媒咨询数据,2024年全球数字人电商直播市场规模达492.82亿美元,预计2026年将达767.93亿美元。中国信通院报告显示,2026年国内AI数…

2026/7/2 4:33:45阅读更多 →
来福谐波(股份代号:3952.HK):全链条自研重塑成本曲线 稳居全球谐波减速器第一梯队

来福谐波(股份代号:3952.HK):全链条自研重塑成本曲线 稳居全球谐波减速器第一梯队

6月22日,浙江来福谐波(股份代号:3952.HK)传动股份有限公司(下称「来福谐波(股份代号:3952.HK)」)正式启动港股招股,作为第十八C章特专科技公司,其…

2026/7/2 4:33:45阅读更多 →
财联万业(杭州)数字科技有限公司能为杭州本地实体店定制收款方案吗?

财联万业(杭州)数字科技有限公司能为杭州本地实体店定制收款方案吗?

在杭州这座充满活力与商机的城市,实体店的发展如雨后春笋般蓬勃。然而,收款环节却成为众多实体店主头疼的难题。传统收款方式存在诸多痛点,如收银效率低、引流运营难、财税合规风险高、资金成本大等。那么,财联万业(杭…

2026/7/2 4:28:45阅读更多 →
AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

6个月前的2025年12月,Boris Cherny 公开宣布自己卸载了 IDE。一时间,Vibe Coding 成了全行业最热的话题。6个月后,当我们回过头来拉一份真实账本,发现事情远没有"一句话生成一个App"那么浪漫。本文从产品经理和研发两个…

2026/7/1 4:42:14阅读更多 →
审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

引言:审计结束三个月了,审计员的权限还没关某城商行每年按照监管要求开展至少一次数据安全审计。审计期间,内审部门需要抽样检查各类业务数据——交易流水、客户信息、员工操作日志、权限配置记录。这些数据分布在不同系统中,审计…

2026/7/1 5:19:01阅读更多 →
塞尔达传说旷野之息存档修改器:3分钟掌握海拉鲁世界自由定制技巧

塞尔达传说旷野之息存档修改器:3分钟掌握海拉鲁世界自由定制技巧

塞尔达传说旷野之息存档修改器:3分钟掌握海拉鲁世界自由定制技巧 【免费下载链接】BOTW-Save-Editor-GUI A Work in Progress Save Editor for BOTW 项目地址: https://gitcode.com/gh_mirrors/bo/BOTW-Save-Editor-GUI 想在《塞尔达传说:旷野之息…

2026/7/2 0:03:01阅读更多 →
告别 AccessKey:多云平台 CLI OAuth 免密认证完全指南

告别 AccessKey:多云平台 CLI OAuth 免密认证完全指南

在本地开发环境使用云厂商 CLI 时,传统的 AccessKey(AK)方式需要手动创建、下载和保管密钥,不仅繁琐,还存在泄漏风险。其实,主流云平台都已提供基于 OAuth 2.0 的免密认证方案,让开发者可以通过浏览器登录一次性完成授权,CLI 自动管理临时凭证的刷新,兼顾了便利与安全…

2026/7/2 0:03:01阅读更多 →
基于13DOF传感器与PIC32MZ的高精度嵌入式导航系统设计

基于13DOF传感器与PIC32MZ的高精度嵌入式导航系统设计

1. 项目背景与核心价值在嵌入式系统开发领域,高精度定位与导航一直是极具挑战性的技术方向。传统方案往往面临成本、精度和实时性难以兼顾的困境。这个项目通过13DOF(13自由度)传感器组合与PIC32MZ2048EFH100高性能MCU的协同工作,…

2026/7/2 0:03:01阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/2 0:33:58阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/2 1:32:11阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/2 1:50:13阅读更多 →