常见数据结构-字符串解题模板

简介: 常见数据结构-字符串解题模板

模板代码

字符串处理这类题目可以分为两类,一类是有前置或者后置空格的,另一类是没有前置和后置空格的。 1、如果有前后置空格,那么必须判断临时字符串非空才能输出,否则会输出空串。模板如下:

// 模板代码
s += " "; //这里在最后一个字符位置加上空格,这样最后一个字符串就不会遗漏
string temp = "";  //临时字符串
vector<string> res; //存放字符串的数组
for (char ch : s)  //遍历字符句子
{
    if (ch == ' ') //遇到空格
    {
        if (!temp.empty()) //临时字符串非空
        {
            res.push_back(temp);
            temp.clear();  //清空临时字符串
        }
    }
    else
        temp += ch; 
}
复制代码

2、没有前后置的空格不需要判断空串。模板如下:

s += " ";
string temp = "";
vector<string> res;
for (char ch : s)
{
    if (ch == ' ')
    {
        res.push_back(temp);
        temp.clear();
    }
    else
        temp += ch;
}
复制代码

参考资料

作者:eh-xing-qing


相关文章
|
设计模式 算法 搜索推荐
C++数据结构设计:理解并选择策略模式与模板特化
C++数据结构设计:理解并选择策略模式与模板特化
512 2
|
XML JSON NoSQL
Redis的常用数据结构之字符串类型
Redis的常用数据结构之字符串类型
|
存储 缓存 NoSQL
redis数据结构-字符串
redis数据结构-字符串
203 1
|
存储 NoSQL Redis
Redis系列学习文章分享---第十六篇(Redis原理1篇--Redis数据结构-动态字符串,insert,Dict,ZipList,QuickList,SkipList,RedisObject)
Redis系列学习文章分享---第十六篇(Redis原理1篇--Redis数据结构-动态字符串,insert,Dict,ZipList,QuickList,SkipList,RedisObject)
271 1
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
497 6
|
存储 JavaScript 前端开发
JavaScript中的对象是数据结构,存储键值对,键为字符串,值可为任意类型,包括函数(作为方法)
【6月更文挑战第25天】JavaScript中的对象是数据结构,存储键值对,键为字符串,值可为任意类型,包括函数(作为方法)。
155 2
数据结构 字符串 (第6天)
数据结构 字符串 (第6天)
114 1
|
算法 C语言
数据结构和算法学习记录——栈和队列习题-用队列实现栈、用栈实现队列(核心思路、解题过程、完整题解)二
数据结构和算法学习记录——栈和队列习题-用队列实现栈、用栈实现队列(核心思路、解题过程、完整题解)二
219 2
|
测试技术 C语言
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
335 1
题目----数据结构线性表----字符串逆序
题目----数据结构线性表----字符串逆序
201 1

热门文章

最新文章