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

หรือติดต่อเข้ามาทาง Inbox ที่ เฟซบุ๊ค ผมครับ

หน้าหลัก
ข่าวสาร - บทความ ทั้งหมด
VB 6/VB.Net
ASP/ASP.Net
จับฉ่ายคอมพิวเตอร์
เรียนรู้ผ่าน Flash Movie
บทความที่มีผู้ตอบล่าสุด  
 RSS Feeds
 ดาวน์โหลดโปรแกรม RSS Reader ได้ที่นี่ ...   Download โปรแกรม RSS Reader

Forum - www.g2gnet.com
Webmaster - www.g2gnet.com
Visitors - Session views
 5 2 6 1 6 3 8

7 ธันวาคม พ.ศ.2549
52 Users On-Line.
Visitors - Page views
 8 5 8 8 3 2 1
1 กุมภาพันธ์ พ.ศ.2551

Google   
เว็บ g2gnet.com
ขนาดตัวอักษร:  

เทคนิคการออกแบบอัลกอริทึม (Algorithm Technique)

Category »  จับฉ่ายคอมพิวเตอร์
โดย : Webmaster เมื่อ 5/11/2549 10:11:00
(อ่าน : 21018) 

ปัญหาเรื่องของการพัฒนาโปรแกรมได้ช้า ทำแล้วมี Bug ต้องแก้ไขมากนับเป็นปัญหาใหญ่ที่สุดในงาน Data Processing มีการแก้ปัญหานี้ โดยการคิดค้นวิธีการต่างๆ เช่น การทำ Structure Programming และ Modular Design บางคนคิดเลยไปจนถึงการเขียนโปรแกรมด้วยการสร้างภาษาใหม่แบบ Non-Procedural บางทีก็เรียกว่า Fourth Generation Language (4thGL) แต่ลงท้ายเมื่อทุกคนเริ่มหันกลับมาดูกันจริงๆ แล้วสรุปว่า การเขียนโปรแกรมให้ดีนั้น ต้องเริ่มจากการพิจารณา โครงสร้างข้อมูลที่ใช้งานนั้นๆ จัดลำดับขั้นตอนการกระทำต่อข้อมูลนั้นๆ เราเรียกขั้นตอนเหล่านี้ว่า อัลกอริทึม (Algorithm)

อาจกล่าวได้ว่า Algorithm เป็นชุดคำสั่งที่ใช้ดำเนินงานอย่างใดอย่างหนึ่ง หรือ แก้ปัญหาอย่างหนึ่งจนสำเร็จลุล่วงลงไป อัลกอริทึมต่างจากระบบ หรือ โปรแกรม ตรงที่อัลกอริทึมไม่รวมคำนิยามเกี่ยวกับข้อมูล แต่จะรวมเฉพาะการดำเนินงานกับข้อมูลเท่านั้น ดังเช่น ตารางการตัดสินใจ และ รหัสเทียม ส่วนผังลำดับงานไม่นับรวมเป็นอัลกอริทึม เนื่องจากบางส่วนของผังเป็นเพียงการนิยามข้อมูลเท่านั้น แม้ว่าบางส่วนของผัง จะอธิบายการดำเนินการกับข้อมูล แต่ก็มิได้กำหนด ลำดับของการเรียกข้อมูลมาใช้ อัลกอริทึมจะบอกวิธีการประมวลผลข้อมูลทีละขั้นตอน ดังนั้นอัลกอริทึม จึงรวมทั้งคำสั่ง ที่เกี่ยวข้องกับการแปลงข้อมูล และ คำสั่งเกี่ยวกับการควบคุมการประมวลผลข้อมูล อัลกอริทึมจึงอาจเขียนเป็นภาษามนุษย์ (Natural Language) ภาษาคอมพิวเตอร์ สัญลักษณ์ทางคณิตศาสตร์ หรือ ในรูปสัญลักษณ์อย่างอื่นได้

ปกติคนธรรมดาๆ สามารถทำการบวก ลบ คูณ หาร ได้(อย่างถูกต้อง) แต่เราทำให้คนๆนั้น มีความสามารถที่เหนือชั้นขึ้นมา ได้อีกขั้นหนึ่ง คือ คำนวณหาค่าหารร่วมมาก (ห.ร.ม.) ได้ จากจุดนี้เราก็ทำการคิดค้นสร้างอัลกอริทึมสำหรับการหาค่ารูทที่ 2 รูทที่ 3 ฯลฯ ได้เช่นกัน และถ้าคิดย้อนกลับไปอีกนิดหนึ่ง เด็กที่พึ่งเรียนรู้วิธีการบวก ลบตัวเลข เราก็สามารถสร้างอัลกอริทึมสำหรับ การคูณ การหารยาว การหารสั้น ฯลฯ ซึ่งภายหลังต่อมา ก็กลายเป็นความรู้พื้นฐานสำหรับการสอนเด็ก หรือ พูดง่ายๆก็คือ ตั้งแต่เกิดมาเป็นผู้ใหญ่ได้สอน "อัลกอริทึม" ต่างๆให้เรามาตลอด จนกระทั่งเราสามารถคำนวณอย่างสลับซับซ้อนได้

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


จี ทู จี เน็ต ดอต คอม - g2gNet Dot Com
เลขทะเบียนพาณิชย์อิเล็กทรอนิกส์ 0407314800231
CopyLeft © 2004 - 2099 g2gNet.Com All rights reserved.
Email: [email protected] หรือ โทร. 08-6862-6560