翻轉單詞順序 VS 左旋轉字串

2022-01-22 19:55:08 字數 673 閱讀 6356

全部內容來自《劍指offer》。

題目一:

輸入乙個英文句子,翻轉句子中單詞的順序,但單詞內字元的順序不變。為簡單起見,標點符號和普通字元一樣處理。例如輸入字串「i am a student.」,則輸出

「student. a am i」。

answer:

void reverse(char *pbegin, char *pend)

}char* reversesentence(char *pdate)

else

if (*pend == '

' || *pend == '\0'

)

else

pend++;

}return

pdate;

}

題目二:

字串的左旋轉操作是把字串前面的若干個字元轉移到字串的尾部。請定義乙個函式實現字串左旋轉操作的功能。比如輸入字串「abcdefg」和數字2,該函式將返回左旋轉2位得到的結果「cdefgab」。

answer:

char* leftrotatestring(char *pstr, int

n) }

return

pstr;

}

leetcode上也有對應的題目

翻轉單詞順序 VS 左旋轉字串

題目1 輸入乙個英文句子,翻轉句子中單詞的順序,但單詞內字元的順序不變,標點符號和普通字母一樣處理。例如輸入 i am a student.則輸出 student.a am i 方法 第一步翻轉句子中所有的字元,第二步翻轉每個單詞中字元的順序。void reverse char pbegin,cha...

演算法題目 翻轉單詞順序 VS 左旋轉字串

輸入乙個英文句子,翻轉句子中單詞的順序,但單詞內字元的順序不變。include include include using namespace std void reverse char pbegin,char pend char reversesentence char pdata else if...

翻轉單詞順序和左旋轉字串

輸入乙個英文句子,翻轉句子中單詞的順序,但單詞內字元的順序不變。為簡單起見,標點符號和普通字母一樣處理。例如輸入字串 i am a student.則輸出 student.a am i include using namespace std void reverse char p1,char p2 ...