当前位置: 首页 > news >正文

网站建设与案例管理的心得体会网站还是app

网站建设与案例管理的心得体会,网站还是app,找人做网站需要多少钱,浙江和海建设集团网站主播今天脑子不好用,先写两题吧~ 题目引用 反转字符串中的单词右旋字符串 1.反转字符串 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且…

主播今天脑子不好用,先写两题吧~

题目引用


  1. 反转字符串中的单词
  2. 右旋字符串

1.反转字符串


给你一个字符串 s ,请你反转字符串中 单词 的顺序。

单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。

返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。

注意:输入字符串 s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。

示例 1:

输入:s = “the sky is blue”
输出:“blue is sky the”

示例 2:

输入:s = " hello world "
输出:“world hello”
解释:反转后的字符串中不能存在前导空格和尾随空格。

示例 3:

输入:s = “a good example”
输出:“example good a”
解释:如果两个单词间有多余的空格,反转后的字符串需要将单词间的空格减少到仅有一个。

我们来看一下题目,要求我们将一个英文句子的每个单词都反转且单词内字母顺序为正序。首先我们可以将反转函数写出来反转时使用,因为反转过后末尾的空格可能会占据句首,所以我们要写一个removespace函数出来,使其将所有多余的空格去掉。
怎么去掉呢?又是双指针。这里的步骤其实和昨天的最后一题替换数字挺像的,我们定义一个slow指向修改时字符串的位置,然后进入循环当s[i]!=' '时,判断slow是否为0,如果为0,直接将i位置的数赋值给slows[slow++]=s[i++],如果不为0,说明不是第一个单词了,需要加上一个空格再赋值。
最后就是将两个函数整合起来,先将多余的空格去掉,再将整个字符串reverse,最后按每个单词的区间来反转回正序。
来看代码:

void reverse(string& s,int start,int end){for(int i=start,j=end;i<j;i++,j--){swap(s[i],s[j]);}}void removespace(string& s){int slow=0;for(int i=0;i<s.size();i++){if(s[i]!=' '){if(slow!=0) s[slow++]=' ';while(i<s.size()&&s[i]!=' ') s[slow++]=s[i++];}}s.resize(slow);}string reverseWords(string s) {removespace(s);reverse(s,0,s.size()-1);int start=0;for(int i=0;i<=s.size();i++){if(i==s.size()||s[i]==' '){reverse(s,start,i-1);start=i+1;}}return s;}

2.右转字符串


题目描述
字符串的右旋转操作是把字符串尾部的若干个字符转移到字符串的前面。给定一个字符串 s 和一个正整数 k,请编写一个函数,将字符串中的后面 k 个字符移到字符串的前面,实现字符串的右旋转操作。

例如,对于输入字符串 “abcdefg” 和整数 2,函数应该将其转换为 “fgabcde”。

输入描述

输入共包含两行,第一行为一个正整数 k,代表右旋转的位数。第二行为字符串 s,代表需要旋转的字符串。

输出描述

输出共一行,为进行了右旋转操作后的字符串。

输入示例

2
abcdefg

输出示例

fgabcde

这题说实话是奖励题,我们按照给的数字确定反转区间,先将整个字符串反转,再将0-nn-end的位置分别反转就行了
直接看代码吧

#include<iostream>
#include<algorithm>
using namespace std;
int main() {int n;string s;cin >> n;cin >> s;int len = s.size(); //获取长度reverse(s.begin(), s.end()); // 整体反转reverse(s.begin(), s.begin() + n); // 先反转前一段,长度nreverse(s.begin() + n, s.end()); // 再反转后一段cout << s << endl;} 

总结


今天的题目比较简单,但其实很多细节需要掌握,例如第一题的去除多余空格的那一步…
明天见~

http://www.yayakq.cn/news/356669/

相关文章:

  • 网站建设类型分类网站wap版怎么做
  • 滑板网页网站设计成都景观设计公司排名
  • 网站没有地图怎么做的网站建设优化哪家专业
  • 前端角度实现网站首页加载慢优化网站标题title
  • 许昌网站建设视频弹幕网站怎么做
  • 淘宝网站所用编码洛阳作公司网站
  • 网站建设留言板公司的网站开发费计入什么科目
  • asp自助建站系统wordpress查询数据库结构
  • 公司网站设计主页部分怎么做wordpress 查看大图
  • 免费自己制作网站那些网站需要备案
  • 免费自助建站系统平台 贴吧外包网站设计哪家好
  • 浦东做网站网站管理助手4.0 破解
  • 手表购买网站郑州达云通网站建设公司
  • 租用了空间 怎样上传网站程序由前台有后台的网站怎么做
  • 网站开发工程师年薪多少营销qq官网
  • 网站建设叫什么软件怎样维护网站建设
  • 企业网站设计步骤自己做的网站怎么推广
  • 的网站开发工具手机3g门户首页
  • 廊坊公司快速建站泊头做网站的公司
  • 免费 网站 如何做慕课网电子商务网站开发
  • 阆中 网站建设跑腿app开发
  • 网站建设主流编程软件傻瓜式app制作
  • 用织梦做网站需不需授权软件开发需要学什么
  • 做a小视频网站基层建设期刊上什么网站查询文章
  • 打开一个网站慢做英文小说网站
  • 电商 网站 建设福安市住房和城乡建设网站
  • 搜索网站的设计与建设核酸检测最新消息
  • 沈阳做网站好的视频网站直播怎么做
  • 导航网站html模板中国建设建行网站
  • 网站后台怎么做直播视频下载软件