อัลกอริทึม การค้นหาเชิงเส้น (Linear Search) ใน PHP- คำอธิบาย ตัวอย่าง และโค้ด

อัลกอริทึมการค้นหาเชิงเส้นเป็นวิธีการค้นหาพื้นฐานและตรงไปตรงมา ทำงานโดยการวนซ้ำแต่ละองค์ประกอบของลำดับเพื่อค้นหาค่าเฉพาะ แม้จะง่าย แต่วิธีนี้ใช้ได้ผลกับลำดับเล็กๆ หรือเมื่อเรียงลำดับแล้ว

มันทำงานอย่างไร

  1. วนซ้ำผ่านองค์ประกอบ: เริ่มจากองค์ประกอบแรกและตรวจสอบว่าค่าปัจจุบันตรงกับค่าเป้าหมายหรือไม่
  2. ตรวจสอบการจับคู่: หากค่าที่ตำแหน่งปัจจุบันตรงกับค่าเป้าหมาย กระบวนการค้นหาจะสิ้นสุดลง และตำแหน่งของค่าจะถูกส่งกลับ
  3. ย้ายไปยังองค์ประกอบถัดไป: หากไม่พบรายการที่ตรงกัน ให้ย้ายไปยังองค์ประกอบถัดไปและตรวจสอบต่อไป
  4. ทำซ้ำ: ทำซ้ำขั้นตอนที่ 2 และ 3 จนกว่าจะพบค่าหรือข้ามลำดับทั้งหมด

ตัวอย่าง: การค้นหาเชิงเส้นสำหรับหมายเลข 7 ในอาร์เรย์

function linearSearch($arr, $target) {  
    $n = count($arr);  
    for($i = 0; $i < $n; $i++) {  
        if($arr[$i] == $target) {  
            return $i; // Return the position of the value  
        }  
    }  
    return -1; // Value not found  
}  
  
$array = [2, 5, 8, 12, 15, 7, 20];  
$targetValue = 7;  
  
$result = linearSearch($array, $targetValue);  
  
if($result != -1) {  
    echo "Value $targetValue found at position $result.";  
} else {  
    echo "Value $targetValue not found in the array.";  
}  

ในตัวอย่างนี้ เราใช้วิธี Linear Search เพื่อหาค่า 7 ในอาร์เรย์ที่กำหนด เราวนซ้ำแต่ละองค์ประกอบของอาร์เรย์และเปรียบเทียบกับค่าเป้าหมาย เมื่อเราพบค่า 7 ที่ตำแหน่งที่ 5 โปรแกรมจะส่งกลับข้อความ "พบค่า 7 ที่ตำแหน่ง