Obrni niz v JavaScriptu
Podali smo vhodni niz in naloga je obrniti vhodni niz v JavaScriptu. To je zelo pogosto vprašanje, zastavljeno v a JavaScript intervju . Obstaja več načinov za obračanje niza JavaScript , ki so opisani spodaj s primeri.
Obrni niz v JavaScriptu
Primeri:
Input: str = 'techcodeview.com' Output: 'skeeGrofskeeG' Input: str = 'Hello' Output: 'olleH'
Obrni niz v JavaScriptu
Obstajajo običajni pristopi za obračanje niza v JavaScriptu. To so:
Kazalo
- Obrni niz v JavaScriptu
- Uporaba metod reduce() in split().
- Uporaba metod split(), reverse() in join().
- Uporaba operaterja Spread
- Uporaba metod Array.form() in reverse().
- Uporaba operatorja Spread in metode reduce().
- Uporaba za zanko
- Uporaba substring() in padajočega indeksa
- Uporaba rekurzije
- Uporaba sklada
1. Uporaba metod reduce() in split().
The metoda split(). razdeli niz na niz znakov in zmanjšati () združi znake v obratnem vrstnem redu z uporabo akumulatorja, kar dejansko obrne prvotni niz.
primer: Spodnja koda pojasnjuje uporabo metode zmanjšanja in razdelitve za obračanje niza.
Javascript function reverseString(str){ const reversedString = str.split('').reduce((acc, char) =>char + acc, ''); console.log(reversedString); } reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
2. Uporaba metod split(), reverse() in join().
The metoda split(). razdeli niz na matriko znakov, reverse() obrne matriko in pridruži se() združi obrnjene znake v nov niz, s čimer dejansko obrne prvotni niz.
primer: Spodnja koda uporablja metode split(), reverse() in join() za obračanje niza v JavaScriptu.
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'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
3. Uporaba operatorja širjenja
The operater širjenja (…) se uporablja za razširitev znakov niza str v posamezne elemente. Metoda reverse() se nato uporabi za obračanje vrstnega reda elementov, join() pa za združevanje obrnjenih elementov nazaj v niz.
primer: Spodnja koda uporablja operator spread za razdelitev niza v niz znakov in njegovo obračanje.
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'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
4. Uporaba metod Array.form() in reverse().
The Array.from() se uporablja za pretvorbo niza v niz posameznih znakov. The metoda reverse(). se nato uporabi za obračanje vrstnega reda elementov v matriki. Končno se za združevanje obrnjenih elementov nazaj v niz uporablja funkcija join().
primer: Spodnji primer kode praktično pojasnjuje zgornji pristop.
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'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
5. Uporaba operatorja širjenja in metode reduce().
The operater širjenja lahko uporabite za pretvorbo niza v niz znakov in uporabo zmanjšati () funkcijo v JavaScriptu za ustvarjanje obratnega niza iz matrike z združevanjem niza v smeri naprej.
primer: Ta koda implementira operator razširjanja in metodo redukcije za obračanje niza.
Javascript // Function to reverse string function reverseString(str) { const strRev = [...str].reduce((x, y) =>y.concat(x)); console.log(strRev); } // Klic funkcije reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
6. Uporaba zanke
The za zanko se uporablja za ponavljanje znakov v nizu v obratnem vrstnem redu. Začenši od zadnjega znaka (str.length – 1) in enega za drugim znak potisnjen v nov obratni niz.
primer: Spodnja koda implementira zanko for za obračanje niza.
Javascript // Function to reverse string function reverseString(str) { let strRev = ''; for (let i = str.length - 1; i>= 0; i--) { strRev += str[i]; } console.log(strRev); } // Klic funkcije reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
7. Uporaba substring() in padajočega indeksa
The podniz () se uporablja za ekstrahiranje znaka na indeksu i in njegovo dodajanje obrnjenemu nizu. Indeks i se nato zmanjša.
primer: Spodnja koda implementira metodo substring() za obračanje niza.
Javascript // Function to reverse string function reverseString(str) { let reversedStr = ''; let i = str.length - 1; while (i>= 0) { reversedStr += str.substring(i, i + 1); jaz--; } console.log(reversedStr); } // Klic funkcije reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
8. Uporaba rekurzije
Pri rekurzivnem pristopu funkcija večkrat kliče samo sebe, vzame podniz iz drugega znaka in ga združi s prvim znakom, dokler ni dosežen osnovni primer, pri čemer se niz obrne.
primer: Ta koda implementira rekurzijo za obračanje niza v JavaScriptu.
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')); Izhod
skeeGrofskeeG tpircSavaJ tpircSepyT
9. Uporaba sklada
Pri tem pristopu uporabljamo kup struktura podatkov. Iteriramo skozi vsak znak vhodnega niza in ga potisnemo na sklad. Nato enega za drugim odstranimo vsak znak iz sklada in jih združimo, da tvorimo obrnjen niz.
primer: Ta koda uporablja sklad za obračanje niza v JavaScriptu.
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) { obrnjeno += stack.pop(); } vrni obrnjeno; } console.log(reverseString('GeeksForGeeks')); Izhod
skeeGroFskeeG