Selepas sekian lama, saya kembali menyelesaikan masalah dalam siri LeetCode 75. Hari ini, saya menyelesaikan masalah pertama, yang mudah tetapi mempunyai beberapa kes sudut yang rumit. Saya ingin berkongsi cara saya menghadapi masalah ini.
Anda diberi dua rentetan perkataan1 dan perkataan2. Cantumkan rentetan dengan menambah huruf dalam susunan berselang-seli, bermula dengan perkataan1. Jika rentetan lebih panjang daripada yang lain, tambahkan huruf tambahan pada hujung rentetan yang digabungkan.
Contoh:
Input: word1 = "abc",
perkataan2 = "pqr"
Output: "apbqcr"
Saya membahagikan penyelesaian saya kepada tiga bahagian:
Semakan logik: Mula-mula, saya menyemak perkataan mana yang mempunyai panjang terkecil. Saya kemudian mengulangi gelung berdasarkan panjang terkecil ini. Jika satu perkataan lebih panjang daripada yang lain, saya menambahkan aksara yang tinggal daripada perkataan yang lebih panjang ke penghujung rentetan.
Menggunakan gelung: Saya menggunakan gelung untuk menggantikan dan menggabungkan aksara daripada setiap rentetan.
Menambah rentetan akhir: Akhirnya, saya menggabungkan rentetan dan mengembalikan hasilnya.
var mergeAlternately = function (word1, word2) { let str = ""; if (word2.length > word1.length) { for (let i = 0; i < word1.length; i++) { str = str + word1[i] + word2[i]; } str = str + word2.substring(word1.length); } else if (word1.length > word2.length) { for (let i = 0; i < word2.length; i++) { str = str + word1[i] + word2[i]; } str = str + word1.substring(word2.length); } else { for (let i = 0; i < word1.length; i++) { str = str + word1[i] + word2[i]; } } return str; }; console.log("result", mergeAlternately("abcd", "pq")); result: apbqcd
Jika anda mempunyai penyelesaian atau idea yang lebih baik, sila berkongsi dengan saya.
Atas ialah kandungan terperinci Gabungkan Rentetan Bergantian dalam javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!