分割 回文字符串
2015-10-19 19:00
246 查看
给定一个字符串s,将s分割成一些子串,使每个子串都是回文串。
返回s所有可能的回文串分割方案。
样例
给出 s = “aab”,返回
[
["aa","b"], ["a","a","b"]
]
最后的 结果集 为什么还是 嵌套的vector
实现:
//判断是否为 回文字符串 bool func1(const string& str) { if (str == "") return true; int length = str.length(); const char* begin = &str[0]; const char* end = &str[length - 1]; // O(n) while(*begin == *end) { if (begin + 1 == end || begin == end) return true; ++begin; --end; } return false; } //将字符串分割 void func2(const string& str) { int length = str.length(); for (int i = 0; i <= length; ++i) { string temp(str, i, j - 1); // 按for循环分割放入temp vecString.push_back(temp); // vector<string> vecStri } for (auto s : vecString) { if (func1(s)) RETURN.push_back(s) // vector<string> RETURN } }
相关文章推荐
- Android SQLite 的学习
- Android中帧布局-FrameLayout和网格布局-GridLayout
- FastJson使用
- 怎么解决每次打开Office 2013都提示配置进度
- Android的使用介绍
- leetcode Unique Paths
- Android/iOS微信6.3.5同时发布更新 支持群视频聊天、群公告
- (2)C#之ADO.Net 如何解决SQL注入漏洞攻击
- jqurey放大镜插件jqzoom参数说明
- String.format()使用方法
- Spring@Autowired注解与自动装配
- partial_sort/partial_sort_copy源码
- Android ViewPager屏蔽预加载
- 生产者消费者模式
- 概念模型、逻辑模型和物理模型的区别
- Android permission 访问权限大全
- 知道一个向量的坐标与另一个向量的长度,两向量垂直,怎么求另一个向量的坐标
- javaMail发送邮件激活注册用户
- 151017总结
- 51nod 1106 质数检测(miller rabin 素数测试.)