Files
Learn-Algorithms/1 String/README.md
T
2021-09-13 14:43:50 +08:00

55 lines
808 B
Markdown

# 字符串
字符串在计算机中的应用非常广泛,这里讨论有关字符串的最重要的算法:
* 排序
* 查找
* 单词查找树
* 子串查找
* 正则表达式:正则表达式是模式匹配的基础,是一个一般化了的子字符串的查找问题,也是搜索工具grep的核心。
* 模式匹配
* grep
* 数据压缩
* 赫夫曼树
* 游程编码
[Java中 String实现 参考这里](java%20String.md)
## 查找
* KMP
* BM
## 滑动窗口
使用滑动窗口解决字符串问题,代码框架
```
int left = 0, right = 0;
while (right < s.size()) {
// 增大窗口
window.add(s[right]);
right++;
while (window needs shrink) {
// 缩小窗口
window.remove(s[left]);
left++;
}
}
```
## 参考
《Algorithms》