字串反轉實現的幾種方式

2021-07-02 11:45:02 字數 1287 閱讀 2068

方式一:

將字串反向輸出來,不改變記憶體(

遞迴實現)

void reverse_string(char *str)

}

方式二

:改變記憶體(

交換法)

/*非遞迴實現:操作記憶體*/

char *reverse_string1(char *str)

/*while迴圈之後,right指向'\0',right--之後,指向最後乙個非'\0'字元*/

right--;

/*左右對稱的兩個元素交換*/

char temp;

while(left < right)

return str;

}

方式三:

改變記憶體(

遞迴實現

/*遞迴實現:操作記憶體*/

/*遞迴每呼叫一次:要反轉的字串頭和尾各減少乙個*/

char *reverse_string2(char *str)

char temp;

/*當字串至少存在兩個非'\0'字元時才用的到反轉*/

if(lenth > 1)

return str;

}

測試:

#include#includeusing namespace std;

/*遞迴實現:操作記憶體*/

/*遞迴每呼叫一次:要反轉的字串頭和尾各減少乙個*/

char *reverse_string2(char *str)

char temp;

/*當字串至少存在兩個非'\0'字元時才用的到反轉*/

if(lenth > 1)

return str;

}/*非遞迴實現:操作記憶體*/

char *reverse_string1(char *str)

/*while迴圈之後,right指向'\0',right--之後,指向最後乙個非'\0'字元*/

right--;

/*左右對稱的兩個元素交換*/

char temp;

while(left < right)

return str;

}void reverse_string(char *str)

}int main()

{ char str1 = "abcdefgh";

char str2 = "abcdefgh";

char str3 = "abcdefgh";

cout<

python反轉字串的幾種方式

class stringreverse object 1.切片操作 defstring reverse 1 self,s return s 1 2.轉換成list,再reverse,之後重組字串 defstring reverse 2 self,s s list list s s list.reve...

幾種方法實現「反轉字串」

今天遇到一道題目是實現乙個反轉字串的函式,具體如下 編寫乙個函式,其作用是將輸入的字串反轉過來。輸入字串以字元陣列 char 的形式給出。不要給另外的陣列分配額外的空間,你必須原地修改輸入陣列 使用 o 1 的額外空間解決這一問題。你可以假設陣列中的所有字元都是 ascii 碼表中的可列印字元。示例...

實現字串反轉

package exercise 實現乙個字串中字元順序的反轉 author lsq public class stringinversedemo 方法一 把字串轉換成字元陣列,然後遍歷字元陣列,注意這裡從字元陣列的角標從高向低遍歷。public static string reverse1 str...