LeetCode面の質問58 - IIは、文字列が回転を残しました。

トピックリンク:https://leetcode-cn.com/problems/zuo-xuan-zhuan-zi-fu-chuan-lcof/

文字列の前の左回転操作は、文字列の転送の終わりにいくつかの文字列です。左回転操作関数文字列を達成するための関数を定義します。例えば、入力文字列「ABCDEFG」と番号2は、この関数が返す2つの結果が左回転「cdefgab」を得ました。

例1:

入力:S = "ABCDEFG"、K = 2
出力: "cdefgab"
実施例2:

入力:S = "lrloseumgh"、K = 6
出力: "umghlrlose"
 

制限事項:

1 <= K <s.length <= 10000

1つの CHAR * reverseLeftWords(CHAR * S、INT N){
 2      INT LEN = STRLEN(S)。
3      、N%= LEN。
4      もし(N == 0リターンS。
5      のchar * STR =(CHAR *)はmallocはsizeofCHAR)* N)。
6      int型I、J。
7      のための式(I = 0 ; iが<N; I ++ ){
 8          STRは、[I] = S [i]は、
9      }
 10      (iがN =、I <lenは、I ++ ){
 11          、S = [IN] 、S [i]は、
12      }
 13      のためには(iは= 0、I <N; I ++ ){
 14の          Sを[I + lenの-N] = STR [I]。
15      }
 16      リターンS。
17 }

 

おすすめ

転載: www.cnblogs.com/shixinzei/p/12405313.html