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

ตรวจสอบตัวเลขเรียงติดกันในอาร์เรย์โดยไม่ต้องเรียงลำดับใน JavaScript


เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลขเป็นอาร์กิวเมนต์แรก และตัวเลข n เป็นอาร์กิวเมนต์ที่สอง

ฟังก์ชันควรตรวจสอบว่ามีลำดับของตัวเลขที่เรียงติดกัน n ตัวขึ้นไปในอาร์เรย์หรือไม่ โดยไม่ต้องเรียงลำดับอาร์เรย์ก่อน

ตัวอย่างเช่น ถ้าอินพุตอาร์เรย์คือ

const arr = [0, 4, 6, 5, 9, 8, 9, 12]; const n = 3;

ฟังก์ชันควรคืนค่า true เนื่องจากมีตัวเลขเรียงติดกัน 3 ตัวคือ 4, 5, และ 6 ในอาร์เรย์

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

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

const arr = [0, 4, 6, 5, 9, 8, 9, 12]; const n = 3; 
const findSequence = (arr, num) => { 
  if(num > arr.length){ 
    return false; 
  }; 
  let count = 1; 
  for(let i = 0; i < arr.length; i++){ 
    let el = arr[i]; 
    while(arr.includes(++el)){ 
      count++; 
      if(count === num){ 
        return true; 
      }; 
    }; 
    count = 1; 
  }; 
  return false; 
}; 
console.log(findSequence(arr, n)); 
console.log(findSequence(arr, 4));

ผลลัพธ์

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

true false