1190. Subrentetan Songsang Antara Setiap Pasangan Tanda Kurung
Sederhana
Anda diberi rentetan s yang terdiri daripada huruf kecil dan kurungan Inggeris.
Terbalikkan rentetan dalam setiap pasangan kurungan yang sepadan, bermula dari yang paling dalam.
Hasil carian anda seharusnya tidak mengandungi sebarang kurungan.
Contoh 1:
-
Input: s = "(abcd)"
-
Output: "dcba"
Contoh 2:
-
Input: s = "(u(sayang)i)"
-
Output: "iloveu"
-
Penjelasan: Substring "cinta" diterbalikkan dahulu, kemudian seluruh rentetan diterbalikkan.
Contoh 3:
-
Input: s = "(ed(et(oc))el)"
-
Output: "leetcode"
-
Penjelasan: Mula-mula, kita terbalikkan subrentetan "oc", kemudian "etco", dan akhirnya, keseluruhan rentetan.
Kekangan:
- 1 <= s.panjang <= 2000
-
s hanya mengandungi aksara Inggeris huruf kecil dan kurungan.
- Dijamin semua kurungan adalah seimbang.
Penyelesaian:
Berikut ialah pelan langkah demi langkah:
- Gunakan tindanan untuk menjejaki aksara dan kurungan bersarang.
- Lintas setiap aksara dalam rentetan.
- Jika anda menemui tanda kurungan pembukaan '(', tolaknya ke dalam tindanan.
- Jika anda menemui kurungan penutup ')', pop dari tindanan sehingga anda mencapai kurungan pembukaan '('. Balikkan subrentetan yang dikumpul dan tolaknya semula ke tindanan.
- Akhir sekali, gabungkan kandungan tindanan untuk mendapatkan hasilnya.
Berikut ialah pelaksanaan dalam PHP: 1190. Subrentetan Songsang Antara Setiap Pasangan Tanda Kurung
Penjelasan
- Fungsi reverseParentheses mengambil rentetan s sebagai input.
- Timbunan digunakan untuk menjejak aksara dan kurungan bersarang.
- Semasa kita melintasi rentetan:
- Jika kami menemui kurungan penutup ), kami mula muncul dari timbunan sehingga kami menemui kurungan pembukaan (.
- Kami mengumpulkan aksara yang muncul (yang berada di dalam kurungan), membalikkannya dan menolaknya semula ke dalam timbunan.
- Jika watak itu bukan kurungan penutup, ia terus ditolak ke dalam tindanan.
- Akhir sekali, kami menggabungkan elemen timbunan untuk membentuk rentetan hasil, memastikan kurungan tidak disertakan.
Kaedah ini mengendalikan kurungan bersarang dengan cekap dan memastikan susunan aksara yang betul selepas membalikkan subrentetan dalam setiap pasangan kurungan.
Pautan Kenalan
Atas ialah kandungan terperinci Subrentetan Songsang Antara Setiap Pasangan Tanda Kurung. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!