算法编程题-字符串类型题目
2017-08-04 12:40
253 查看
1.介绍
在笔试面试中,字符串类型题目相当广泛,原因有一下几点:1.字符串可以看做是字符类型的数组,与数组的排序、查找、调整有关
2.很多其他类型的题目最终可能会转化成字符串类型的题目
2.需要掌握的几个概念
1.回文2.子串(连续)
3.子序列(不连续)
4.前缀树(Trie树)
5.后缀树和后缀数组
6.匹配
7.字典序
3.字符串题目常见类型
1.规则判断判断字符串是否符合整数规则
判断字符串是否符合浮点数规则
判断字符串是否符合回文字符串规则
2.数字运算
int和long类型表达的整数范围有限,所以经常使用字符串来实现大整数,实现与大整数相关的运算
3.与数组操作有关的类型
数组有关的调整、排序等操作
快速排序的划分过程需要掌握和改写
4.字符计数
解决方案:哈希表、固定长度的数组(c/c++ 256长度、java中65536长度)
相关其他问题:滑动窗口问题、寻找无重复字符子串问题、计算变位词问题等
5.动态规划问题
最长公共子串
最长公共子序列
最长回文子串
最长回文子序列等
6.搜索类型
宽度优先搜索
深度优先搜索
比如:给定两个被打乱的字符串A和B,每次只能交换一次字符,如何把A变成B,打印这种变换轨迹
7.高级算法和数据结构解决的问题
Manacher算法解决最长回文子串问题
KMP算法解决字符串匹配问题
前缀树结构
后缀树和后缀数组
通常面试中很少出现,因为当场事先比较复杂
相关文章推荐
- [编程题] LeetCode上的Reservoir Sampling(蓄水池算法)类型的题目
- java中,几种字符串类型主键生成算法性能比较。
- 算法编程题3-字符串旋转词问题
- 经典算法面试题目-设计算法移除字符串中重复的字符(1.3)
- 【算法拾遗】阿里实习生电面题目:输出给定字符串的全部连续子串
- 字符串类型题目
- 一道算法题目 java中的数字字符串和数组的算法
- 题目:JavaScript编程题 查找字符串"sdddrtkjsfkkkasjdddj"中出现次数最多的字符和次数。
- 经典算法面试题目-设计算法移除字符串中重复的字符(1.3)
- 【C编程练习】2013华为校园招聘机试题目题5:将一个int类型的数字转化为字符串,并判断有无重复字符串(长度应大于2)有返回1,无返回2
- 面试题(一)-------面试中常见的字符串类型题目及思路解答
- 面试经典题目:字符串的反转算法
- 算法面试字符串-题目3-交换*号
- 九度 Online Judge 算法 刷题 题目1049:字符串去特定字符
- hihocoder #1039 : 字符消除 ( 字符串处理类 ) 好久之前做的题目,具体的算法代码中阅读吧
- 经典算法面试题目-翻转一个C风格的字符串(1.2)
- 基本类型算法题目学习(EPI)
- 一个十分有趣的字符串算法题目(转On April 19, 2011, in 算法, by sponge)
- 经典算法面试题目-翻转一个C风格的字符串(1.2)
- 经典算法面试题目-判断两个字符串是否是变位词(1.4)