【问题标题】:Reverse the order of the words in C [closed]颠倒C中单词的顺序[关闭]
【发布时间】:2020-01-09 19:42:13
【问题描述】:

我想在线性时间内以恒定的额外空间反转特定字符串中单词(而不是字符)的顺序?

【问题讨论】:

  • 你需要编写一个程序来做到这一点。
  • 你可以将每个单词的字母反转,然后是整个字符串
  • 你有什么想法吗?或者尝试过什么?
  • 不清楚您是否知道算法或需要帮助找出要使用的算法。你能用你做什么和不需要帮助来澄清你的问题吗?如果您有想要使用的算法,请告诉我们那是什么算法。如果您不知道要使用哪种算法,请向我们说明您在解决这个问题时遇到了什么困难。
  • 显示代码

标签: c algorithm data-structures


【解决方案1】:

首先,反转整个字符串(通过交换第一个和最后一个字符,朝向中间等)。这应该足以让您入门。如果没有,请继续阅读:

然后颠倒每个单词中字符的顺序。现在每个单词中的字符都按照原来的顺序(它们总共颠倒了两次),但是单词的顺序是相反的(第一个单词现在在末尾,等等)

【讨论】: