首页 > 其他分享 >Day7 反转字符串,反转字符串II,替换数字

Day7 反转字符串,反转字符串II,替换数字

时间:2024-07-01 13:29:56浏览次数:3  
标签:string int 反转 namespace Day7 字符串 using include size

反转字符串 

#include<iostream>
using namespace std;
#include<string>
void fanzhuan(string& s)
{
	for (int i = 0,j=s.size()-1; i < s.size() / 2; i++,j--)
	{
		swap(s[i], s[j]);
	}
	cout << s;
}
int main()
{
	string s;
	cin >> s;
	fanzhuan(s);

}

反转字符串II

#include<iostream>
using namespace std;
#include<string>
#include<algorithm>
string fanzhuan(string s,int k)
{
	for (int i = 0; i < s.size(); i += (k * 2))
	{
		if (i + k <= s.size())//这个得有等于号,这个就是相当于是在这个区间范围
		{
			reverse(s.begin() + i, s.begin() + i + k);
		}
		else
		{
			reverse(s.begin() + i, s.end());
		}
	}
	return s;
}
int main()
{
	string s;
	cin >> s;
	cout << fanzhuan(s, 2);
}

替换数字

#include<iostream>
using namespace std;
#include<string>
string charu(string s)
{
	int num = 0;
	for (int i = 0; i < s.size(); i++)
	{
		if (s[i] >= '0' && s[i] <= '9')
		{
			num++;
		}
	}
	string n;
	n.resize(s.size() + num * 3);

	int sold = n.size() - 1;
	int snew = s.size() - 1;
	while (snew >= 0)
	{
		if (s[snew] >= '0' && s[snew] <= '9')
		{
			n[sold--] = 'n';
			n[sold--] = 'm';
			n[sold--] = '@';
			
		}
		else
		{
			n[sold--] = s[snew];
		}
		snew--;
	}
	return n;
}
int main()
{
	string s;
	cin >> s;
	
	cout<<charu(s);

}

大家做题的时候一定要认真,别跟我一样,搞了半天,才发现自己整错了

标签:string,int,反转,namespace,Day7,字符串,using,include,size
From: https://blog.csdn.net/lxy2966201752/article/details/140064166

相关文章

  • Python-字符串
    字符串1.字符串字面量单引号:'spa"m'双引号:"spa'm"三引号:'''...spam...''',"""...spam..."""转义序列:"s\tp\na\0m"原始字符串:r"C:\new\test.spm"字节字面量:b'spx01a......
  • CF631D Messenger (kmp + 字符串处理)
    CF631DMessengerkmp+字符串处理思路简单,写起来细节比较多首先要合并同类项,然后再考虑什么时候\(s=t\)。如果合并后\(t\)有一种或两种字符,那么都可以直接做;大于两种,我们发现匹配的条件为:中间部分完全相同,首尾字符相同并且\(s\)首尾字符的数量要大于\(t\)。中间部分完......
  • 代码随想录算法训练营第十天|232.用栈实现队列、225.用队列实现栈、20.有效的括号、 1
    今天学习了栈与队列这两个数据结构,栈是一个先进后出的结构,在C++中用stack进行表示,有push、pop、top、empty这些属性;队列是一个先进后出的结构,有push、pop、front、back。empty这些属性。在底层实现上,他们都是用deque双向队列进行实现的。232.用栈实现队列题目链接:232.用栈......
  • 代码随想录算法训练营第九天|151.翻转字符串里的单词,卡码网:55.右旋转字符串
    151.翻转字符串里的单词题目链接:151.反转字符串中的单词-力扣(LeetCode)题目要求是给定一个字符串,要求把里面的单词进行倒序输出,并且要删除里面多余的空格。我的第一种做法是把里面的字符串提取出来,然后倒序放入一个新的字符串中,这样空间复杂度会比较高,也AC了,但肯定不是最......
  • 关于之前写的动态字符串的绑定再说一点
    1、我今天发现一个奇怪的事情我之前写的关于动态字符串的绑定https://www.cnblogs.com/guchen33/p/18060276<TextBlockWidth="200"Height="30"FontSize="20"Text="{BindingContent,StringFormat={}{0}!}"/> pu......
  • leetCode.92. 反转链表 II
    leetCode.92.反转链表II题目思路代码/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nullptr){}*ListNod......
  • java将整数转换为字符串
    1.toString适用于int类型publicclasstest{ publicstaticvoidmain(String[]args){ inti=777; Stringstr=Integer.toString(i); System.out.println(str); }}2.valueOf 适用于int、double、boolean和Object类型publicclasstest{ public......
  • C语言教程-11-字符串
    title:C语言教程-11-字符串tags:[C]categories:C语言教程description:最重要的交互信息-字符串及其存储,操作提要:本章要讲解字符串的内容.同时会使用到前面基本输入输出一章中讲解的各种输入输出函数和数组,若不了解请自行复习.注意:本章需要的前置知识为:1.......
  • 《最新出炉》系列入门篇-Python+Playwright自动化测试-52- 字符串操作 - 下篇
    1.简介在日常的自动化测试工作中进行断言的时候,我们可能经常遇到的场景。从一个字符串中找出一组数字或者其中的某些关键字,而不是将这一串字符串作为结果进行断言。这个时候就需要我们对字符串进行操作,宏哥这里介绍两种方法:正则和字符串切片函数split()。2.测试场景宏哥在这里......
  • shell字符串截取
    假设有变量var=http://www.aaa.com/123.htm.1.#号截取,删除左边字符,保留右边字符。[root@ansible01~]#var=http://www.aaa.com/123.htm.[root@ansible01~]#echo${var#*//}www.aaa.com/123.htm. 其中var是变量名,#号是运算符,*//表示从左边开始删除第一个//......