Odwróć ciąg w JavaScript
Podaliśmy ciąg wejściowy, a zadaniem jest odwrócenie ciągu wejściowego w JavaScript. Jest to bardzo częste pytanie zadawane w Wywiad JavaScript . Istnieją różne metody odwracania ciągu znaków JavaScript , które opisano poniżej wraz z przykładami.
Odwróć ciąg w JavaScript
Przykłady:
Input: str = 'techcodeview.com' Output: 'skeeGrofskeeG' Input: str = 'Hello' Output: 'olleH'
Odwróć ciąg w JavaScript
Istnieją typowe podejścia do odwracania ciągu znaków w JavaScript. To są:
Spis treści
- Odwróć ciąg w JavaScript
- Korzystanie z metod redukcji() i podziału().
- Korzystanie z metod split(), Reverse() i Join().
- Korzystanie z operatora rozprzestrzeniania
- Korzystanie z metod Array.form() i Reverse().
- Korzystanie z operatora Spread i metody redukcji().
- Korzystanie z pętli for
- Używanie substring() i indeksu malejącego
- Korzystanie z rekurencji
- Korzystanie ze stosu
1. Korzystanie z metod redukcji() i podziału().
The metoda podziału(). dzieli ciąg na tablicę znaków i zmniejszyć() łączy znaki w odwrotnej kolejności za pomocą akumulatora, skutecznie odwracając oryginalny ciąg.
Przykład: Poniższy kod wyjaśnia użycie metody redukcji i podziału w celu odwrócenia ciągu.
JavaScript function reverseString(str){ const reversedString = str.split('').reduce((acc, char) =>znak + wpis, ''); konsola.log(odwrócony ciąg); } ReverseString('techcodeview.com'); odwrotnyString('JavaScript'); ReverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
2. Używanie metod split(), Reverse() i Join().
The metoda podziału(). dzieli ciąg na tablicę znaków, funkcja Reverse() odwraca tablicę, oraz dołączyć() łączy odwrócone znaki w nowy ciąg, skutecznie odwracając oryginalny ciąg.
Przykład: Poniższy kod wykorzystuje metody split(), Reverse() i Join() do odwrócenia ciągu znaków w JavaScript.
JavaScript // Function to reverse string function reverseString(str) { const strRev = str.split('').reverse().join(''); console.log(strRev); } // Function call reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
3. Korzystanie z operatora rozprzestrzeniania
The operator spreadu(…) służy do rozkładania znaków ciągu str na poszczególne elementy. Następnie stosowana jest metoda Reverse() w celu odwrócenia kolejności elementów, a metoda Join() służy do łączenia odwróconych elementów z powrotem w ciąg znaków.
Przykład: Poniższy kod używa operatora spreadu do podzielenia ciągu znaków na serię znaków i odwrócenia go.
JavaScript // Function to reverse string function reverseString(str) { const strRev = [...str].reverse().join(''); console.log(strRev); } // Function call reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
4. Korzystanie z metod Array.form() i Reverse().
The Tablica.z() służy do konwersji ciągu znaków na tablicę pojedynczych znaków. The metoda odwrotna(). jest następnie stosowana do odwrócenia kolejności elementów w tablicy. Na koniec metoda Join() służy do łączenia odwróconych elementów z powrotem w ciąg znaków.
Przykład: Poniższy przykład kodu wyjaśnia praktycznie powyższe podejście.
JavaScript // Function to reverse string function reverseString(str) { const strRev = Array.from(str).reverse().join(''); console.log(strRev); } // Function call reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
5. Korzystanie z operatora Spread i metody redukcji().
The operatora spreadu można użyć do przekształcenia ciągu znaków w tablicę znaków i użycia zmniejszyć() funkcja w JavaScript, aby utworzyć ciąg odwrotny z tablicy poprzez połączenie ciągu w kierunku do przodu.
Przykład: Ten kod implementuje operator rozprzestrzeniania i metodę redukcji w celu odwrócenia ciągu.
JavaScript // Function to reverse string function reverseString(str) { const strRev = [...str].reduce((x, y) =>y.concat(x)); konsola.log(strRev); } // Wywołanie funkcji ReverseString('techcodeview.com'); odwrotnyString('JavaScript'); ReverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
6. Korzystanie z pętli for
The dla pętli służy do iteracji po znakach ciągu w odwrotnej kolejności. Zaczynając od ostatniego znaku (str.length – 1) i znak po kolei przesuwany do nowego odwrotnego ciągu.
Przykład: Poniższy kod implementuje pętlę for w celu odwrócenia ciągu znaków.
JavaScript // Function to reverse string function reverseString(str) { let strRev = ''; for (let i = str.length - 1; i>= 0; i--) { strRev += str[i]; } konsola.log(strRev); } // Wywołanie funkcji ReverseString('techcodeview.com'); odwrotnyString('JavaScript'); ReverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
7. Używanie metody substring() i indeksu malejącego
The podciąg () służy do wyodrębnienia znaku o indeksie i i dołączenia go do odwróconego ciągu. Następnie indeks i jest zmniejszany.
Przykład: Poniższy kod implementuje metodę substring() w celu odwrócenia ciągu.
JavaScript // Function to reverse string function reverseString(str) { let reversedStr = ''; let i = str.length - 1; while (i>= 0) { odwróconyStr += str.substring(i, i + 1); I--; } konsola.log(odwróconaStr); } // Wywołanie funkcji ReverseString('techcodeview.com'); odwrotnyString('JavaScript'); ReverseString('TypeScript'); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
8. Stosowanie rekurencji
W podejściu rekurencyjnym funkcja wielokrotnie wywołuje samą siebie, pobierając podciąg z drugiego znaku i łącząc go z pierwszym znakiem, aż do osiągnięcia przypadku podstawowego, co powoduje odwrócenie ciągu.
Przykład: Ten kod implementuje rekurencję odwracającą ciąg znaków w JavaScript.
JavaScript function strReverse(str) { if (str === '') { return ''; } else { return strReverse(str.substr(1)) + str.charAt(0); } } console.log(strReverse('techcodeview.com')); console.log(strReverse('JavaScript')); console.log(strReverse('TypeScript')); Wyjście
skeeGrofskeeG tpircSavaJ tpircSepyT
9. Korzystanie ze stosu
W tym podejściu używamy stos struktura danych. Wykonujemy iterację po każdym znaku ciągu wejściowego i umieszczamy go na stosie. Następnie wyjmujemy każdy znak ze stosu jeden po drugim i łączymy je, tworząc odwrócony ciąg.
Przykład: Ten kod używa stosu do odwrócenia ciągu w JavaScript.
JavaScript function reverseString(str) { const stack = []; // Push each character onto the stack for (let char of str) { stack.push(char); } // Pop each character from the stack to reverse the string let reversed = ''; while (stack.length>0) { odwrócone += stack.pop(); } powrót odwrócony; } console.log(reverseString('GeeksForGeeks')); Wyjście
skeeGroFskeeG