字符串处理001

字符串处理001,第1张

字符串处理001

字符串定义:
一串字符的集合,理解为以’’结尾的字符数组。
字符和整数的关系ASCII码一一对应关系。
几个较为重要的字符对应关系:
‘A’ 65
‘a’ 97
‘0’ 48
一般描述字符串的时候采用的是string类原因是功能更加强大使用起来更加方便。
引用头文件
介绍一个函数的用法:
sort函数
对两个迭代器(或指针)指定的部分进行快速排序,第三个参数可以传入定义大小比较的函数,或者是对小于号的重载
实现的是从小到大进行排序

int a[maxn];
bool cmp(int a, int  b)
{
	return a > b;
}
sort(a, a + n, cmp);

如果是自定义结构体进行结构体内数据的比较的话可以进行第二种方式

struct rec{
	int x, y;
};
vector  a;
bool operator <(const rec &a, const rec &b)
{
	return a.x < b.x || a.x == b.x && a.y < b.y;
}
sort(a.begin(), a.end());
001字符串处理


(图片来自网络)
思路分析:采用两个变量进行循环即可,每次循环进行计数,也就是双指针算法来处理;
直接上代码:

#include 
#include 

using namespace std;

int main()
{
    int n;
    cin >> n;       
    while(n --)
    { 
        int k, max_ = 0;
        string str, val;// 在循环里面的定义可以重置字符串;
        cin >> str; 
        for(int i = 0; i < str.size(); i ++)
        {
            k = i;
            while(k < str.size() && str[k] == str[i])  k ++;
            if(k - i > max_)
            {
                max_ = k - i;
                val = str[i];
            } //赋值;
            i = k - 1; //别忘了减一就行;
        }
        cout << val << ' ' << max_ << endl;//输出结果即可。
    }
    return 0;
}

好了这就是今天的题目,明天再见!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5711383.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存