บุคคลใด ๆ ในชีวิตประจำวันของเขาถูกบังคับให้ต้องแก้ไขงานต่าง ๆ จำนวนมาก เขาไม่ได้คิดเกี่ยวกับการแก้ปัญหาบางอย่าง ("การซื้อของชำ") ในขณะที่บางปัญหาทำให้เกิดปัญหาและไตร่ตรองอยู่นาน ("รวบรวมลูกบาศก์ของรูบิก") ตัวอย่างข้างต้นของงานที่ง่ายและซับซ้อนมีเหมือนกันที่สามารถแบ่งออกเป็นขั้นตอนที่เข้าใจได้ ลำดับขั้นตอนดังกล่าวสามารถใช้เป็นเครื่องเตือนใจเพื่อช่วยแก้ปัญหาได้ ลำดับนี้สามารถเรียกได้ว่าเป็นอัลกอริทึม
แน่นอน คุณสามารถเก็บลูกบาศก์ของรูบิคได้โดยไม่ต้องใช้บันทึก เพียงแค่เลื่อนขอบตามลำดับแบบสุ่ม แต่การแจกแจงตัวเลือกที่เป็นไปได้อาจใช้เวลานาน มันจะเป็นกระบวนการที่ไม่ก่อผลและด้อยประสิทธิภาพ การมีรายการขั้นตอนสะดวกกว่ามาก การดำเนินการตามลำดับจะนำไปสู่ผลลัพธ์ที่เป็นบวกเสมอ เป็นหลักการเหล่านี้ที่สร้างแนวคิดเช่น "อัลกอริทึม"
อัลกอริธึมคือชุดคำสั่ง (ขั้นตอน) ที่อธิบายลำดับของการดำเนินการของผู้ปฏิบัติการเพื่อให้ได้ผลลัพธ์ของการแก้ปัญหาในจำนวนที่จำกัดของการดำเนินการ
นักแสดงคืออะไร?
เพื่อความเข้าใจที่ดีขึ้นของอัลกอริทึมโดยทั่วไป จำเป็นต้องพิจารณาแนวคิดของ "ตัวดำเนินการอัลกอริทึม" ด้วย ผู้ดำเนินการตามแนวคิดของอัลกอริธึมหมายถึงระบบนามธรรมที่สามารถดำเนินการตามที่อธิบายโดยอัลกอริธึมและมีลักษณะเฉพาะหลายประการ ในฐานะนักแสดง มักหมายถึงวิธีการทางเทคนิคอย่างใดอย่างหนึ่ง (เครื่องพิมพ์ 3D, เครื่อง CNC, คอมพิวเตอร์) อย่างไรก็ตาม ควรเข้าใจว่านี่เป็นแนวคิดที่กว้าง: นักแสดงสามารถเป็นบุคคลได้
อย่างไรก็ตามมีเพียงระบบที่มีพารามิเตอร์จำนวนหนึ่งเท่านั้นที่สามารถเรียกได้ว่าเป็นนักแสดง:
- สิ่งแวดล้อม;
- ระบบคำสั่ง;
- การกระทำเบื้องต้น
- การปฏิเสธหากการดำเนินการเป็นไปไม่ได้
คุณสมบัติของอัลกอริทึม
ข้อจำกัดที่กำหนดไว้ในแนวคิดของ "นักแสดง" นำไปสู่ความจริงที่ว่าแนวคิดของ "อัลกอริทึม" นั้นมีคุณสมบัติและข้อจำกัดหลายประการเช่นกัน อัลกอริธึมเป็นที่แพร่หลายอย่างแม่นยำเนื่องจากข้อจำกัดเหล่านี้ ซึ่งนำไปสู่มาตรฐาน ในบรรดาคุณสมบัติของอัลกอริธึมคือ:
- ความหนาแน่น (ความสามารถของอัลกอริธึมที่จะคงความถูกต้องสำหรับชุดข้อมูลอินพุตต่างๆ)
- ความมั่นใจ (ในขั้นตอนใด ๆ ของอัลกอริทึม นักแสดงต้องมีข้อมูลเพียงพอที่จะดำเนินการ)
- การกำหนดระดับ (ด้วยชุดข้อมูลอินพุตเดียวกันควรได้ผลลัพธ์เดียวกัน)
เหตุใดจึงจำเป็นต้องใช้อัลกอริทึม
คุณสมบัติข้างต้นทำให้มีการใช้อัลกอริธึมอย่างกว้างขวาง ดังนั้นอัลกอริธึมจึงทำหน้าที่เป็นมาตรฐานสำหรับคำอธิบายของกระบวนการ หากไม่มีอัลกอริธึม การคำนวณใดๆ จะเป็นไปไม่ได้ และการแก้ปัญหาใดๆ จะเริ่มต้นจากศูนย์ แม้ว่าจะได้รับการแก้ไขหลายครั้งก็ตาม การใช้อัลกอริธึมช่วยให้คุณแก้ปัญหาประเภทเดียวกันได้อย่างรวดเร็ว ลดเวลาที่ใช้ในการค้นหาวิธีแก้ไข ทำให้กระบวนการค้นหาเป็นไปโดยอัตโนมัติ และแจกจ่ายโซลูชันที่พบในรูปแบบมาตรฐาน ซึ่งหมายความว่าทุกคนสามารถเข้าใจได้