การจับคู่สตริงใน DAA คืออะไร
การจับคู่สตริงใน DAA คืออะไร

วีดีโอ: การจับคู่สตริงใน DAA คืออะไร

วีดีโอ: การจับคู่สตริงใน DAA คืออะไร
วีดีโอ: อัลกอริทึม : 9.18 การจับคู่สตริง - Boyer-Moore 2024, พฤศจิกายน
Anonim

การจับคู่สตริง อัลกอริธึมเรียกอีกอย่างว่า" สตริง กำลังค้นหาอัลกอริธึม" นี่คือคลาสที่สำคัญของ สตริง อัลกอริธึมถูกประกาศเป็น "นี่คือวิธีการหาสถานที่ที่มีหลาย ๆ แห่ง สตริง จะพบได้ภายในที่ใหญ่ขึ้น สตริง ."

พูดง่ายๆ ก็คือ อัลกอริธึมการจับคู่สตริงที่ไร้เดียงสาคืออะไร?

รูปแบบไร้เดียงสา การค้นหาเป็นวิธีที่ง่ายที่สุดในหมู่ผู้อื่น ลวดลาย กำลังค้นหา อัลกอริทึม . ตรวจสอบอักขระทั้งหมดของ main สตริง เพื่อ ลวดลาย . นี้ อัลกอริทึม มีประโยชน์สำหรับข้อความที่มีขนาดเล็ก ความซับซ้อนของเวลาของ รูปแบบไร้เดียงสา วิธีค้นหา isO(m*n)

อัลกอริธึมการจับคู่สตริงต่างกันอย่างไร อีกคนหนึ่งจำแนกอัลกอริทึมตามกลยุทธ์การจับคู่:

  • จับคู่คำนำหน้าก่อน (คนุท-มอร์ริส-แพรตต์, ชิฟต์-แอน, อาโฮ-คอราซิก)
  • จับคู่คำต่อท้ายก่อน (Boyer-Moore และรุ่นต่างๆ, Commentz-Walter)
  • จับคู่ปัจจัยที่ดีที่สุดก่อน (BNDM, BOM, Set-BOM)
  • กลยุทธ์อื่นๆ (ไร้เดียงสา, ราบิน-คาร์ป)

พูดง่ายๆ คือ การจับคู่รูปแบบใน DAA คืออะไร

การจับคู่รูปแบบ ในวิทยาการคอมพิวเตอร์คือการตรวจสอบและค้นหาลำดับเฉพาะของ ข้อมูล ของบางอย่าง ลวดลาย ท่ามกลางวัตถุดิบ ข้อมูล หรือลำดับของโทเค็น ไม่เหมือน ลวดลาย การรับรู้ the จับคู่ จะต้องแน่นอนในกรณีของ การจับคู่รูปแบบ.

การจับคู่สตริงเดรัจฉานคืออะไร?

เดรัจฉาน - การจับคู่สตริงแรง เปรียบเทียบ agiven ลวดลาย พร้อมสตริงย่อยทั้งหมดของข้อความที่กำหนด การเปรียบเทียบเหล่านั้นระหว่างสตริงย่อยและ ลวดลาย ดำเนินการทีละอักขระเว้นแต่จะพบไม่ตรงกัน

แนะนำ: