タイトル説明
書き込み機能、「私は学生です。」、とフリップの後、「学生。A私は」。単語の内部構造を変更することなく、位置を反転し、そのワード文
思考
ボディのための2つのアイデア、ずっと同じことがあります。
:考え
内部反転する1-ワード(結果:Iミリアンペア.tneduts A)
(学生の結果午前I)の2-および全体的な反転の最初のステップの結果
思想II:
1-全く進歩がオン(結果:私はミリアンペアを.tneduts)
-2-内部ワード交換前と後の最初のステップの結果(結果学生午前I.)
コード
コードは、そのアイデアのコードです
class Solution {
public:
string ReverseSentence(string str) {
char* st = &str[0], * end = &str[0], * ptr = &str[0];
while (*ptr++ != '\0') {
if (*ptr == ' ' || *ptr == '\0') {
end = ptr - 1;
while (st < end) { //进行单词内部交换
swap(*st++, *end--);
}
st = end = ptr+1;
}
}
st = &str[0];
end = ptr - 2;
while (st<end) {//进行整体的前后交换翻转
swap(*st++, *end--);
}
return str;
}
};