การพัฒนาอัลกอริทึม
แนะนำใหม่| English | ความหมาย |
|---|---|
| algorithm/ˈælɡərɪθəm/ | อัลกอริทึม |
| finite/ˈfaɪnaɪt/ | มีจำกัด |
| sequencing/ˈsiːkwənsɪŋ/ | การเรียงลำดับ |
| flowchart/ˈfləʊtʃɑːt/ | แผนภาพไหล |
| natural language/ˈnætʃərəl ˈlæŋɡwɪdʒ/ | ภาษาธรรมชาติ |
| same result/seɪm rɪˈzʌlt/ | ผลลัพธ์เดียวกัน |
| refine/rɪˈfaɪn/ | ปรับปรุง |
| efficient/ɪˈfɪʃənt/ | มีประสิทธิภาพ |
อัลกอริทึมคืออะไร?
- Algorithm (อัลกอริทึม) คือชุดคำสั่งแบบขั้นบันไดที่เป็น finite (จำกัด) เพื่อทำงานให้สำเร็จ.
- "Finite" หมายความว่ามันจบลงหลังจากจำนวนขั้นตอนที่จำกัดเสมอ.
- สูตรอาหาร, เส้นทางไปโรงเรียน, และวิธีการเรียงลำดับ ล้วนเป็น algorithms.
- ทุกโปรแกรมสร้างจาก algorithms.
อัลกอริทึมคือ:
Difficulty 1/5 · 100 coins + a small bonus on first completion today
"มีจำนวนจำกัด" หมายความว่ามันจะสิ้นสุดหลังจากจำนวนขั้นตอนที่จำกัดเสมอ
โครงสร้างพื้นฐานสามอย่าง
- ทุก algorithm สร้างจากสามโครงสร้างพื้นฐาน:
- sequencing: ทำขั้นตอนทีละขั้นตอนตามลำดับ;
- selection: เลือกเส้นทางระหว่างทางเลือก;
- iteration: ทำซ้ำขั้นตอน.
การจัดลำดับ การเลือก หรือการทำซ้ำ?
ทุกอัลกอริทึมถูกสร้างจากโครงสร้างสามอย่าง: การจัดลำดับ (ขั้นตอนตามลำดับ), การเลือก (การเลือกเส้นทาง), และการทำซ้ำ (การทำซ้ำขั้นตอน)
โครงสร้างพื้นฐานของอัลกอริทึมมีอะไรบ้าง? (เลือกทั้งหมดที่ใช้ได้)
Difficulty 2/5 · 140 coins + a small bonus on first completion today
การจัดลำดับ การเลือก และการทำซ้ำสร้างอัลกอริทึมทุกชนิด
แผนภาพไหล คำ伪โค้ด และภาษาธรรมชาติสามารถแสดง:
Difficulty 1/5 · 100 coins + a small bonus on first completion today
ทั้งสามอธิบายขั้นตอนเดียวกันด้วยวิธีการที่ต่างกัน
อัลกอริทึมที่แตกต่างกันสองแบบสามารถสร้างผลลัพธ์ที่ถูกต้องเหมือนกันได้ โดยแบบหนึ่งเร็วกว่าอีกแบบหนึ่ง
Difficulty 1/5 · 100 coins + a small bonus on first completion today
ไม่มีแบบใด "ถูกต้องมากกว่า" หากทั้งสองให้คำตอบที่ถูกต้อง
วิธีแสดงออก
- คุณสามารถแสดง algorithm เป็น pseudocode (รหัสจำลอง), flowchart (แผนภาพ流程图) หรือใน natural language (ภาษาธรรมชาติ) แบบธรรมดา.
- ทั้งสามวิธีอธิบายขั้นตอน เดียวกัน ในรูปแบบที่แตกต่างกัน.
- Algorithms ต่างๆ สามารถให้ ผลลัพธ์เดียวกัน — อย่างหนึ่งสั้นแต่ช้า, อีกอย่างยาวแต่เร็ว.
- ไม่มีใคร "ถูกต้องมากกว่า" ถ้าทั้งสองให้คำตอบที่ถูกต้อง.
อัลกอริทึม "ค่ามากที่สุดในสามค่า" ทำงานกับ a=4, b=9, c=6 จะออกผลลัพธ์อะไร?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
เริ่มต้นที่ 4; 9 > 4 → เปลี่ยนเป็น 9; 6 > 9 เป็นเท็จ → คงเหลือ 9
การปรับปรุงอัลกอริทึมทีละขั้นเพื่อให้ถูกต้อง ชัดเจน และมีประสิทธิภาพเรียกว่า ______
Difficulty 1/5 · 100 coins + a small bonus on first completion today
การปรับปรุงเกิดขึ้นหลังการทดสอบ ทำให้อัลกอริทึมดีขึ้นในทุกครั้งที่ผ่าน
ปรับปรุงเพื่อประสิทธิภาพ
- เรา refine (ปรับปรุง) algorithm เพื่อให้มันถูกต้อง ชัดเจน และมี efficiency (ประสิทธิภาพ).
- Refining หมายความว่าปรับปรุงมันทีละขั้นตอนหลังการทดสอบ.
ค่ามากที่สุดในสามค่า. largest ← a; IF b > largest: largest ← b; IF c > largest: largest ← c; DISPLAY largest. สำหรับ a=4, b=9, c=6: เริ่ม 4; 9 > 4 → ค่ามากที่สุด 9; 6 > 9 เป็น false → ยังคงเป็น 9. ผลลัพธ์ 9. นี้ใช้ sequencing และ selection.
An algorithm (อัลกอริทึม) คือชุดขั้นตอนที่เป็น finite (จำกัด), สร้างจากสามโครงสร้าง: sequencing, selection, และ iteration. คุณสามารถแสดง它以 pseudocode, flowchart, หรือ natural language. Algorithms ต่างๆ สามารถให้ ผลลัพธ์เดียวกัน, ดังนั้นเราจึง refine它们เพื่อให้ถูกต้อง ชัดเจน และมี efficiency.