วันศุกร์ที่ 21 ตุลาคม พ.ศ. 2554

1. โครงสร้างข้อมูล มีความสำคัญอย่างไร

         ในสาขาวิทยาการคอมพิวเตอร์โครงสร้างข้อมูล (อังกฤษ: Data structure) เป็นวิธีการจัดเก็บข้อมูลในคอมพิวเตอร์เพื่อให้สามารถใช้งานได้อย่างมีประสิทธิภาพ บ่อยครั้งที่การเลือกโครงสร้างข้อมูลที่เหมาะสมจะทำให้เราสามารถเลือกใช้อัลกอริทึมที่มีประสิทธิภาพไปพร้อมกันได้ การเลือกโครงสร้างข้อมูลนั้นโดยส่วนใหญ่แล้วจะเริ่มต้นจากการเลือก แบบชนิดข้อมูลนามธรรมโครงสร้างข้อมูลที่ออกแบบเป็นอย่างดีจะสามารถรองรับการประมวลผลที...่หนักหน่วงโดยใช้ทรัพยากรที่น้อยที่สุดเท่าที่จะเป็นไปได้ ทั้งในแง่ของเวลาและหน่วยความจำ

โครงสร้างข้อมูลแต่ละแบบจะเหมาะสมกับงานที่แตกต่างกัน และโครงสร้างข้อมูลบางแบบก็ออกแบบมาสำหรับบางงานโดยเฉพาะ อย่างเช่น ต้นไม้แบบบีจะเหมาะสำหรับระบบงานฐานข้อมูล

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

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

5.เครื่องมือที่ใช้ในการออกแบบอัลกอริทึมมีอะไรบ้าง

เครื่องมือที่ใช้ในการออกแบบอัลกอริทึมมีอะไรบ้าง


1.ผังงาน(Flowchart)


2.รหัสจำรอง(Pseudo)

3. บอกชื่อรูปแบบของโครงสร้างข้อมูลที่มีใช้อยู่ในปัจจุบันมาให้ครบ

โครงสร้างข้อมูลในภาษาคอมพิวเตอร์
โครงสร้างข้อมูลในภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันจำแนกออกเป็น 2 ประเภท ซึ่งแสดงการจำแนกโครงสร้างข้อมูลได้
โครงสร้างข้อมูลทางกายภาพ โครงสร้างข้อมูลทางกายภาพ (physical data structures) เป็นโครงสร้างข้อมูลทั่วไปที่มีใช้ในภาษาคอมพิวเตอร์ ซึ่งแบ่งออกเป็นข้อมูล 2 ประเภทตามลักษณะข้อมูล
ข้อมูลโครงสร้าง (structured data types) เป็นข้อมูลที่มีโครงสร้างสลับซับซ้อน เกิดจากการนำโครงสร้างข้อมูลเบื้องต้นมาประกอบกันเป็นโครงสร้างข้อมูลที่หลากหลายขึ้น ข้อมูลที่ใช้ในเครื่องคอมพิวเตอร์ยุคแรกเป็นข้อมูลเบื้องต้นเท่านั้น แต่ในปัจจุบันภาษาคอมพิวเตอร์เกือบทุกภาษามีข้อมูลโครงสร้างด้วยแทบทั้งสิ้น ตัวอย่างข้อมูลโครงสร้าง เช่น
- แถวลำดับ (array)
- เซต (set)
- ระเบียนข้อมูล (record)
- แฟ้มข้อมูล (file)
โครงสร้างข้อมูลทางตรรกะ โครงสร้างข้อมูลทางตรรกะ (logical data structures) เป็น โครงสร้างข้อมูลที่เกิดจากจินตนาการของผู้ใช้เพื่อใช้แก้ปัญหาในโปรแกรมที่สร้างขึ้น จำแนกได้เป็น 2 ประเภท ดังแสดงใน
โครงสร้างข้อมูลแบบเชิงเส้น (linear data structures) เป็นชนิดข้อมูลที่ความสัมพันธ์ของข้อมูลเรียงต่อเนื่องกัน โดยข้อมูลตัวที่ 2 อยู่ต่อจาก ข้อมูลตัวที่ 1 ข้อมูลตัวที่ 3 อยู่ต่อจากข้อมูลตัวที่ 2 และข้อมูลตัวที่ n อยู่ต่อจากข้อมูลตัวที่ n – 1 (ดูรายละเอียดเพิ่มเติมได้ในบทที่ 5) ตัวอย่างโครงสร้างข้อมูลแบบเชิงเส้น เช่น
- ลิสต์ (list)
- สแตก (stack)
- คิว (queue)
- ดีคิว (de
- สตริง (string)ดูเพิ่มเติม

4. อัลกอริทึม คืออะไร



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

ที่มาของคำว่าอัลกอริธึม (Algorithm) คือ คำที่ตั้งให้เป็นเกียรติแก่ อแลน เดอะ กอริทึม ทิวริง (Alan The Gorithm T...
uring) ผู้ค้นพบว่าการพิสูจน์ทางคณิตศาสตร์หรือปัญหาทางตรรกะ สามารถหาคำตอบได้ด้วยชุดของขั้นตอนวิธีที่ถูกต้อง

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

วันพฤหัสบดีที่ 20 ตุลาคม พ.ศ. 2554

2. โครงสร้างข้อมูลมีกี่แบบ



 
โครงสร้างข้อมูลมีกี่แบบ
นธ์กันเลย
2.โครงสร้างแบบ linear
เป็นโครงสร้างที่ข้อมูลมีความสัมพันธ์แบบ "หนึ่งต่อหนึ่ง" (one-to-one relationship) นั่นคือเราสามารถระบุถึงข้อมูลตัวถัดไปของข้อมูลได้
3.โครงสร้างแบบ tree or hierarchical
เป็นโครงสร้างที่ข้อมูลมีความสัมพันธ์กันแบบ "หนึ่งต่อหลาย" (one-to-many relationship) นั่นคือ ข้อมูลตัวหนึ่งสามารถมีความสัมพันธ์กับข้อมูลในลำดับรองลงไปได้หลายตัว
4.โครงสร้างแบบ graph or network
เป็นโครงสร้างที่ข้อมูลมีความสัมพันธ์กันแบบ "หลายต่อหลาย" (many-to-many relationship) นั่นคือ ข้อมูลตัวหนึ่ง ๆ อาจจะมีความสัมพันธ์กับข้อมูลตัวอื่น ๆ กี่ตัวก็ได้


โครงสร้างข้อมูล คือการแสดงถึงความสัมพันธ์ระหว่างข้อมูล
ความสัมพันธ์หลักใหญ่ ๆ 4 แบบ ได้แก่
1.โครงสร้างข้อมูลแset เป็นโครงสร้างที่ข้อมูลแต่ละตัว ไม่มีความสัมพั

กุศลกรรมบถ 10

กุศลกรรมบถ 10
กุศลกรรมบถ หมายถึง ทางแห่งกรรมดี,ทางทำดี, ทางแห่งกรรมที่เป็นกุศล, กรรมดีอันเป็นทางนำไปสู่ความสุขความเจริญหรือสุคติ (wholesome course of action) เป็นธรรมส่วนสุจริต 10 ประการ จึงเรียกชื่อว่า กุศลกรรมบถ 10
คำว่า กรรมบถ (อ่านว่า กำมะบด) แปลว่า ทางแห่งกรรม คือ การกระทำที่เข้าทางเป็นกรรมหรือที่นับว่าเป็นกรรม หมายถึง ทางแห่งกุศลกรรม คือการกระทำที่นับว่าเป็นความดีได้แก่
  • ที่เป็นกายกรรม มี 3 อย่าง คือ ไม่ฆ่าสัตว์ ไม่ลักทรัพย์ ไม่ประพฤติผิดในกาม
  • ที่เป็นวจีกรรม มี 4 คือ ไม่พูดเท็จ ไม่พูดส่อเสียด ไม่พูดคำหยาบ ไม่พูดเพ้อเจ้อ
  • ที่เป็นมโนกรรม มี 3 คือ ไม่โลภอยากได้ของเขา ไม่พยาบาทปองร้าย เห็นชอบตามคลองธรรม (สัมมาทิฐิ)
กุศลกรรมบถ ก็คือสุจริตทางกาย ทางวาจา และทางใจนั่นเอง
ประพฤติดีด้วยกาย 3 ประเภท
ประพฤติดีด้วยกาย นั้นชื่อว่า กายกรรม คือ ทำกิจการงานด้วยกายอย่าให้ทุกข์เกิดขึ้นแก่ผู้อื่น กายกรรมที่ให้เกิดทุกข์แก่ผู้อื่นนั้น มี 3 ประการ
1.      คือ อย่าเบียดเบียนร่างกายของท่าน คือ อย่าฆ่า อย่าฟัน อย่าทุบ อย่าตี ร่างกายของท่านผู้อื่นโดยที่สุด เว้นถึงสัตว์ติรัจฉานได้ยิ่งเป็นการดี ตรงภาษาบาลีที่ว่า ปาณาติปาตาเวรมณี ฯ
2.      คือ อย่าเบียดเบียนทรัพย์สมบัติข้าวของของท่านผู้อื่น คืออย่าลักขโมย อย่าฉ้อโกง อย่าเบียดบังเอาข้าวของของท่านผู้อื่น ตรงภาษาบาลที่ว่า อทินฺนาทานาเวรมณี ฯ
3.      คือ อย่าแย่งชิงลักลอบด้วยอำนาจของกายในหญิงที่ท่านหวงห้าม ตรงภาษาบาลีที่ว่า กาเมสุมิจฉาจาราเวรมณีฯ
ประพฤติดีด้วยวาจา 4 ประเภท
ประพฤติดีด้วยวาจา 4 ประเภท (วจีกรรม 4 ประเภท) นั้นได้แก่
1.      คือ ให้กล่าวแต่วาจาถ้อยคำที่สัตย์ที่จริง ให้เว้นจากวาจาที่เท็จไม่จริงเสีย ตรงกับภาษาบาลีที่ว่า มุสาวาทาเวรมณี ฯ
2.      คือ ให้กล่าวแต่วาจาถ้อยคำอันสมานประสานสามัคคีให้ท่านดีต่อกัน ให้เว้นวาจาส่อเสียดยุยงเสีย ตรงกับภาษาบาลีที่ว่า ปิสุณายาวาจาเวรมณีฯ
3.      คือ ให้กล่าวแต่วาจาถ้อยคำอันอ่อนโยน ให้เกิดความยินดีแก่ผู้ฟัง ให้งดเว้นวาจาที่หยาบคายขึ้นกูขึ้นมึง บริภาษตัดพ้อหยาบๆ คายๆ ให้ผู้ฟังได้รับความเดือดร้อนต่างๆ เสีย ตรงกับภาษาบาลีที่ว่า ผรุสฺสายวาจายเวรมณี ฯ
4.      คือ ให้กล่าวแต่วาจาถ้อยคำที่เป็นไปกับด้วยประโยชน์ ให้เว้นวาจาที่เหลวไหล คือพูดเล่นหาประโยชน์มิได้เสีย ตรงกับภาษาลีที่ว่า สมฺผปฺปลาปาวาจายเวรมณี ฯ
ประพฤติดีด้วยใจ 3 ประเภท
ประพฤติดีด้วยใจ 3 ประเภท (มโนกรรม 3 ประเภท) นั้นคือ
1.      คือ ให้ระวังเจตนากรรม ให้สัมประยุตต์ด้วยเมตตาอยู่เสมอ คือ ความดำริของใจ อย่าให้ลุอำนาจแห่งโลภะ คืออย่าเพ่งเอากิเลสกามและวัตถุกามของท่านผู้อื่น อันไม่สมควรแก่ฐานะของตน ตรงกับภาษาบาลีที่ว่า อนภิชฺฌา โหติฯ
2.      คือ ให้ระวังเจตนากรรมให้สัมประยุตต์ด้วยกรุณาอยู่ทุกเมื่อ อย่าให้โทสะ พยาบาท เข้าครอบงำได้ ตรงกับภาษาบาลีที่ว่า อพฺพยาปาโท โหติฯ
3.      คือ ให้ระวังเจตนากรรมให้สัมประยุตต์ด้วย มุทิตา อุเบกขา อยู่ทุกเมื่อ อย่าให้ไหลไปในทางผิด ให้เห็นตรงตามคลองธรรมทั้ง 10 นี้อยู่ทุกเมื่อ ตรงกับภาษาบาลีที่ว่า สมฺมทิฎฺฐิโก โหติฯ