Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

คืนค่าอาร์เรย์ที่เรียงตามลำดับเล็กซิโคกราฟิกใน JavaScript


เราต้องเขียนฟังก์ชัน JavaScript ที่รับสองอาร์เรย์ คือ arr1 และ arr2 ฟังก์ชันของเราควรคืนค่าอาร์เรย์ที่เรียงแล้วในลำดับเล็กซิโคกราฟิกของสตริงของ arr1 ซึ่งเป็น substring ของสตริงของ arr2

ตัวอย่างโค้ด

โค้ดสำหรับการทำงานนี้จะเป็นดังนี้

const lexicographicalSort = (arr1 = [], arr2 = []) => { 
  let i, j; 
  const res = []; 
  outer: for (j = 0; j < arr1.length; j++) { 
    for (i = 0; i < arr2.length; i++) { 
      if (arr2[i].includes(arr1[j])) { 
        res.push(arr1[j]); 
        continue outer; 
      }; 
    }; 
  } 
  return res.sort(); 
}; 
const arr2 = ["lively", "alive", "harp", "sharp", "armstrong"]; 
const arr1 = ["xyz", "live", "strong"]; 
console.log(lexicographicalSort(arr1, arr2));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็นดังนี้

[ 'live', 'strong' ]