字串的逆置

2021-09-28 23:01:00 字數 1509 閱讀 7369

1.逆序整個字串

eg: 字串為"student a am i" 將這個字串逆置之後可以得到----> 「i ma a tneduts」

這種逆序的方式就是將整個字串逆置

實現的方式有如下幾種方式

(1)

#include

intmy_strlen

(char

* str)

else

}void

reverse

(char

* str)

}int

main()

上述**中,my_strlen的模擬實現利用了遞迴的方式,好處就是沒有呼叫庫函式,也沒有使用臨時變數計數器count,字串的逆置函式,使用了建立臨時變數進行交換的方法

(2)

#include

intmy_strlen

(char

* str)

else

}void

reverse

(char

* left,

char

* right)

}int

main()

上述**中字串的逆置實現通過指標實現,乙個左指標,乙個右指標,通過交換,實現字串的逆置

(3)有乙個字元陣列的內容為"student a am i"

請你將字元陣列的內容改為 i am a student

要求:不能使用庫函式。

只能開闢有限個空間(空間個數和字串的長度無關)。

只能開闢有限個空間的意思是:

當字串的長度是n個時 開闢的空間是要固定的,要求的意思就是空間複雜度

定義乙個程式的複雜度(空間複雜度和時間複雜度)

我只浪費有限個空間,與開闢的空間沒有關係

student a am i

先全部逆序

i ma a tneduts

然後再每個單詞進行逆序

最終的到

i am a student

思路:首先將整個字串進行逆序,之後,再將已經逆序過的字串中的每個單詞進行逆序

最終得到想要的結果。

#include

intmy_strlen

(char

* str)

else

}void

reverse

(char

* left,

char

* right)

}int

main()

reverse

(start, end -1)

;if(*end !=

'\0')}

printf

("%s"

, arr)

;return0;

}

要實現字串的逆置,以及字串中各個單詞的逆置,首先就要將整個字串擬逆置,之後再將字串中的各個單詞進行逆置,就可以得到最終的結果。

python字串逆置 字串逆置演算法

1,輸人 字串 123456 輸出 654321 注意 字元陣列不等於字串,只有當字元陣列結尾加上結束標誌 0 才是字串。所以字串用字元陣列來初始化時,結尾必須加上 0 比如 初始化字串 char ch 7 如下 include include include define maxsize 100 ...

字串逆置

題目描述 字串 i am a student 逆置為 student a am i 思路 第一次逆置 先將整個字串都逆置 tneduts a ma i 第二次逆置再將每個單詞逆置 student a am i 利用空格找出乙個單詞進行逆置 public class testdemo2 public ...

逆置字串問題

這類問題算是比較簡單的了,而我們的思路是從字串兩頭開始,交換內容。在這裡我介紹兩種方法。1.迴圈的方式 2.遞迴的方式 1 迴圈的方式很好理解,就是暴力地進行內容的交換,而交換的規則就是從begin和end兩頭進行內容交換 hehehe e.g.字串 l am a student.我們可以定義乙個指...