单词倒排

Posted desperate-me

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单词倒排相关的知识,希望对你有一定的参考价值。

单词倒排

描述

编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。

输入

输入为一个字符串(字符串长度至多为100)。

输出

输出为按要求排序后的字符串。

样例输入

I am a student

样例输出

student a am I

代码

#include <iostream>
#include <cstring>
using namespace std;

int main() {
	char ch[101], ans[101];
	cin.getline(ch, 101);
	int len = strlen(ch);
	int j = 0;
	for (int i = len - 1; i >= -1; --i) {
		if ((i == -1 || ch[i] == ‘ ‘) && j != 0) {
			int start = i + 1;
			for (int ii = 0; ii < j; ++ii)
				cout << ch[start + ii];
			if (i != -1) cout << " ";
			j = 0;
		}
		if (i >= 0 && ch[i] != ‘ ‘) ++j;
	}
	return 0;
}

思路分析

其实这个题的难度是中下,不想对第一个单词进行判断,要注意逻辑操作的短路

以上是关于单词倒排的主要内容,如果未能解决你的问题,请参考以下文章

单词倒排

OJ_单词倒排

倒排索引

35:字符串单词倒排 ReverseWords

28:单词倒排

搜索引擎基础概念—— 倒排列表