题目:将字符串中的单词位置倒置,如student a an I倒置后是I am a student

分析:先将整个字符串倒置,然后按照单词倒置,那么单词内部顺序就被倒回来了,而单词之间倒置了,这就达到了我们想要的效果。

//先写一个字符串的倒置函数
void reverse_str(char* str, int begin, int end)
{assert(str);while (begin < end){char tmp = str[begin];str[begin] = str[end];str[end] = tmp;begin++;end--;}
}//倒置单词
void reverse_worlds(char* str)
{assert(str);int len = strlen(str);//先倒置整个字符串reverse_str(str, 0, len-1);//再按照单词倒置int wdbegin = 0;//记录单词起始int wdend = 0;//记录单词结尾while (str[wdend] != '\0'){if (str[wdend] != ' ')//字符不等于空格才开始(主要为了第一次进来){wdbegin = wdend;//每次单词的开头是上一次空格的下一个位置while (str[wdend] !='\0' && str[wdend] != ' '){wdend++;}//来到这wdend是空格,说明一个单词完了,则倒置这个单词reverse_str(str, wdbegin ,wdend-1);wdend++;//跳过这个空格,进行下一个单词}}
}

将字符串中的单词位置倒置,如student a an I倒置后是I am a student相关推荐

  1. 李洋疯狂C语言之将”you are come from shanghai ”倒置为”shanghai from come are you”,将句子中的单词位置倒置,而不改变单词内部结构

    题目: 编写一个C函数,将"you are come from shanghai "倒置为"shanghai from come are you",及将句子中的 ...

  2. PHP | 计算字符串中的单词总数

    Given a string and we have to count the total number of words in it. 给定一个字符串,我们必须计算其中的单词总数. str_word ...

  3. php技术计算字符个数的函数是什么,php计算字符串中的单词数的函数str_word_count()...

    实例 计算字符串 "Hello World!" 中的单词数:<?php echo str_word_count("Hello world!"); ?> ...

  4. 【leetcode】557 反转字符串中的单词III(字符串)

    题目链接:https://leetcode-cn.com/problems/reverse-words-in-a-string-iii/ 题目描述 给定一个字符串,你需要反转字符串中每个单词的字符顺序 ...

  5. 字符串(一) | 剑指 Offer 58 - II. 左旋转字符串、541. 反转字符串 II、剑指 Offer 05. 替换空格、151. 反转字符串中的单词

    剑指 Offer 58 - II. 左旋转字符串 把前k个字符移动到结尾 翻转前k个字符,翻转剩余字符 翻转整个字符串 class Solution { public:void reverse(str ...

  6. Suzy找到实习了吗Day 8 | 字符串开始啦 344. 反转字符串,541. 反转字符串 II,剑指 Offer 05. 替换空格,151. 反转字符串中的单词,左旋转字符串

    这里是目录 344. 反转字符串 题目 Solution 541. 反转字符串 II 题目 Solution(v1) Solution(v2) 剑指 Offer 05. 替换空格 做题记录 151. ...

  7. 使用C语言分析分析英文字符串中的单词

    @[TOC] 使用C语言分析分析英文字符串中的单词 分析英文字符串时会产生的问题 比如一句英文: we eat dinner at four o'clock,noodles is delicious. ...

  8. 删除字符串中各单词间多余空格

    删除字符串中各单词间多余空格 编程实现删除字符串中各单词间多余空格,只保留一个空格.如果字首字符中有连续空格,应完全删除:如果非字母字符前后有空格应该将空格完全删除:如果末尾是一连续空格也应将其删除. ...

  9. LeetCode 557. 反转字符串中的单词 III

    文章目录 1. 题目描述 2. 解题思路 3. 代码实现 1. 题目描述 题目链接:557. 反转字符串中的单词 III 2. 解题思路 此题也可以直接在原字符串上进行操作,避免额外的空间开销. 当找 ...

最新文章

  1. R符号秩检验(WILCOXON SIGNED RANK TEST)
  2. 自动驾驶车辆何时实现?近期不会实现的五大原因
  3. webconfig的connectionStrings字段
  4. 用python画花瓣-Python教程:使用Turtles画出带有花瓣的花
  5. 【B站视频教程笔记】基于VSCode和CMake实现C/C++开发 | Linux篇(gcc/g++)(安装、配置、使用详细教程)(VSCode教程)(CMake教程)(精!)
  6. mdkstc系列器件支持包下载_Qorvo PAC系列高集成度电机控制芯片及应用
  7. 打造基于大并发通信技术及大数据技术的O2O系统
  8. MyBatis 实际使用案例-总结
  9. 桌面虚拟化在学生教室及机房的应用案例
  10. Internet概念与TCP/ IP分层模型
  11. 牛客网 【每日一题】5月26日题目精讲 [JSOI2007]建筑抢修
  12. c语言的报告一,C语言实验报告(一).doc
  13. Docker容器的单进程模型
  14. FPGA资源评估方法
  15. 标准C程序设计七---120
  16. python的namedtuple
  17. 计算机打出音乐小樱,《火影忍者》插曲——小樱主题曲
  18. 新版谷歌浏览器80.0永久开启Flash
  19. 完整的产品管理工作流程
  20. Java实时报表统计查询慢_如何解决报表关联计算中的性能问题

热门文章

  1. 编译方舟编译器源码教程
  2. 2022年最新江苏机动车签字授权人模拟试题及答案
  3. 记一次hashMap遍历时删除异常
  4. springboot项目打成公共jar包被其他项目单独引用(包含mybatis-plus)
  5. linux当中怎么修改文件后缀------- mv命令
  6. B-tree vs hash_我思故我在_百度空间
  7. 性价比一流的颜值实力派 荣耀畅玩8C上手体验
  8. 负载均衡 CLB 是什么
  9. java达达租车接口_菜鸟JAVA达达租车系统
  10. PS【二】--钢笔、蒙版等工具