JavaScript 字串反轉函式


在這個問題陳述中,我們的目標是列印 n 個連續的奇數,並藉助 Javascript 功能實現此問題。因此,我們可以藉助 Javascript 中的迴圈來解決這個問題。

理解問題陳述

給定的問題指出我們有一個字串,我們需要對其進行反轉。簡單來說,如果我們有字串“Hello”,則此字串的反轉將為“olleH”。

給定問題的邏輯

為了解決上述問題,我們需要具備 Javascript 的基本知識。在程式碼中,我們將使用一個 Javascript 函式來反轉給定的字串,並將字串傳遞給函式。在這個函式內部,我們將建立一個變數來儲存反轉後的字串,並使用 for 迴圈以反向順序遍歷輸入字串的字元,並將這些反轉後的字串放入建立的變數中。

演算法

步驟 1 − 此演算法的起點是宣告一個變數來儲存反轉後的字串,並將其初始化為空。

步驟 2 − 宣告變數後,使用 for 迴圈遍歷字串的字元。因此,我們將從最後一個字元開始迭代字串,因為我們希望字串按反向順序排列。

步驟 3 − 在此迴圈內,我們將所有遍歷的字元追加到步驟 1 中建立的變數中。

步驟 4 − 最後,我們將函式的結果顯示為反轉後的字串。

演算法程式碼

//function to reverse the given string
function reverseStr(str) {
   let reverse = '';
   for (let i = str.length - 1; i >= 0; i--) {
      reverse += str[i];
   }
   return reverse;
}
const str = "Hello Javascript";
console.log(reverseStr(str));

複雜度

程式碼執行並生成反轉字串所需的時間為 O(n),因為我們需要使用 for 迴圈遍歷一次字串以反轉給定的字串。其中 n 是給定字串的長度。儲存反轉字串的空間複雜度也為 O(n),因為我們將所有字元儲存在與輸入字串長度相同的字串變數中。

結論

在上面提到的程式碼中,我們定義了一個函式來反轉給定的字串。此函式基本上將一個字串作為引數,並輸出與輸入字串長度相同的反轉後的字串。此演算法的時間和空間複雜度均為 O(n)。

更新於: 2023年5月18日

455 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告