ร่างสารบัญ (หนังสือแด่เขมรัตน์)
เนื้อหา
- 1 หน้าปก
- 2 หน้าใน
- 3 คำนำ
- 4 บทนำ
- 5 เซต
- 6 ตรรกศาสตร์และการพิสูจน์
- 7 ระบบเลขฐาน
- 8 คณิตศาสตร์เชิงการจัด
- 9 ความน่าจะเป็น
- 10 ฟังก์ชัน
- 11 ลำดับ อนุกรม
- 12 ทฤษฏีกลุ่ม
- 13 เมตริกซ์
- 14 ทฤษฏีจำนวน (Number Theory)
- 15 พื้นฐานการเขียนโปรแกรม
- 16 ทฤษฎีการคำนวณ
- 17 โครงสร้างข้อมูล
- 18 ทฤษฏีกราฟ
- 19 การคำนวณเชิงเรขาคณิต
- 20 เทคนิคการออกแบบอัลกอริทึม
- 21 อัลกอริทึมสำหรับจัดการข้อความ
- 22 การค้นหาข้อมูล (Searching)
- 23 อัลกอริทึมเพื่อการประมาณ (จะเขียนดีไหม)
- 24 ภูมิปัญญาชาวบ้าน (heuristic) (จะเขียนดีไหม)
- 25 อัลกอริทึมเกี่ยวกับกราฟ
- 26 ตัวอย่างข้อสอบ
- 27 References
หน้าปก
หน้าใน
คำนำ
ผู้อ่านเป้าหมาย
ผู้ที่ต้องการสอบโอลิมปิกคอมพิวเตอร์
จุดประสงค์
เพื่อให้ผู้สามารถเรียนด้วยตัวเองได้ ดังนั้นจำเป็นต้องเขียนให้อ่านง่ายที่สุด อาจจะมีแบบฝึกหัด และ เฉลยสำหรับทุกบท
บทนำ
ในแต่ละปีสสวท.จะเป็นผู้คัดเลือกตัวแทนประเทศไทยไปสอบแข่งขันโอลิมปิกวิชาการ ซึ่งประเทศไทยส่งตัวแทนเข้าแข่งขันรวม 6 สาขา โดย สาขาคอมพิวเตอร์ ก็เป็นสาขาหนึ่งใน 6 สาขานั้น
สิ่งที่ต้องเตรียมสำหรับการสอบแข่งขันโอลิมปิกวิชาการ สาขาคอมพิวเตอร์นั้นจำเป็นต้องเตรียมความพร้อมในหลายๆ ด้าน ทั้งที่มีในหลักสูตรมัธยมศึกษา และเนื้อหาเฉพาะทางนอกเหนือในหลักสูตร โดยคณะผู้เขียน ได้รวบรวมเนื้อหาความรู้ที่จำเป็นต้องใช้ในการสอบแข่งขันไว้ และได้แบ่งเนื้อหาออกเป็นบท โดยเรียงลำดับให้ง่ายต่อการทำความเข้าใจ
เซต
- ดูบทความจริงได้ที่ เซต (หนังสือแด่เขมรัตน์)
ตรรกศาสตร์และการพิสูจน์
ระบบเลขฐาน
คณิตศาสตร์เชิงการจัด
หลักการพื้นฐาน
การเรียงสับเปลี่ยนและการจัดหมู่
การเรียงสับเปลี่ยนแบบมีตัวซ้ำ
การเรียงสับเปลี่ยนแบบไม่มีตัวซ้ำ
การจัดหมู่แบบไม่มีตัวซ้ำ
การจัดหมู่แบบมีตัวซ้ำ
เทคนิคสตาร์แอนด์บาร์
สัมประสิทธิ์ทวินามและเอกลักษณ์ต่างๆ
แบบฝึกหัด
ความน่าจะเป็น
แซมเปิลสเปซ
แซมเปิลสเปซ (Sample Space)
แซมเปิลพ้อยท์
แซมเปิลพ้อยท์ (Sample Point)
เหตุการณ์
เหตุการณ์ (Event)
ค่าความน่าจะเป็น
ความน่าจะเป็น = จำนวนสมาชิกของเหตุการณ์ หารด้วย จำนวนสมาชิกของแซมเปิลสเปส
คุณสมบัติของความน่าจะเป็น
ฟังก์ชัน
ความสัมพันธ์
นิยาม
โดเมน-เรนจ์
ลำดับ อนุกรม
ลำดับ
ลำดับเลขคณิต
ลำดับเลขาคณิต
ลำดับฮาโมนิก
อนุกรม
อนุกรมเลขคณิต
อนุกรมเลขาคณิต
อนุกรมฮาโมนิก
ทฤษฏีกลุ่ม
Group
Ring
Field
เมตริกซ์
นิยาม
การบวกลบเมตริกซ์
การคูณเมตริกซ์
ทฤษฏีจำนวน (Number Theory)
(Kanat: Contents being edited)
การหารลงตัว (Divisibility)
นิยาม: การหารลงตัว
ตัวหารร่วมมาก (Greatest Common Divisor)
อัลกอริทึมแบบยูคลิด
สมการไดโอแฟนไทน์เชิงเส้น
จำนวนเฉพาะ
ทฤษฎีบทมูลฐานของเลขคณิต
จำนวนเฉพาะมีอยู่มากมาย
การทดสอบจำนวนเฉพาะ
ความหนาแน่นของจำนวนเฉพาะ
คอนกรูเอนซ์ (Congruence)
แนะนำคอนกรูเอนซ์
คอนกรูเอนซ์พิสดาร
ฟังก์ชันฟีออยเลอร์และทฤษฎีบทของออยเลอร์
เรื่องน่ารู้อื่นๆ
ตัวเลขพิเศษ
การเข้ารหัสแบบ RSA
อัลกอริทึมเกี่ยวกับทฤษฎีจำนวน
โจทย์ต่างๆ
พื้นฐานการเขียนโปรแกรม
- ดูบทความจริงได้ที่ พื้นฐานการเขียนโปรแกรม
- การเตรียมเครื่องมือสำหรับเขียนโปรแกรม
- เริ่มแรกกับ Hello world
- โครงสร้างภาษา C
- ตัวแปร
- ค่าคงที่
- การแสดงผลออกหน่วยแสดงผลพื้นฐาน
- การรับข้อมูลจากหน่วยรับข้อมูลพื้นฐาน
- พอยน์เตอร์
- ประโยคเงื่อนไข
- ประโยคกระทำซ้ำ
- ฟังก์ชันและโพรซีเยอร์
- คอมเม้นต์(comment)
- ฟังก์ชั่นเวียนกำเนิด
- โครงสร้าง (struct)
- การจัดการกับแฟ้มข้อมูล
- การเขียนโปรแกรมแบบปลอดบัก
ทฤษฎีการคำนวณ
ออโตมาตาจำกัดและนิพจน์เรกูลาร์
ออโมมาตาแบบพุชดาวน์และไวยากรณ์ไม่อิงบริบท
เครื่องจักรทัวริง
ความบริบูรณ์ NP (NP-completeness)
ความยาก NP (NP-hardness)
โครงสร้างข้อมูล
อาร์เรย์และลิงค์ลิสต์
คิวและสแตก
ดิสจอยนท์เซต
ฮีปทวิภาค
ต้นไม้ค้นหาแบบทวิภาค
เซตแบบพลวัต
ดิกชันนารีแบบพลวัต
ทฤษฏีกราฟ
นิยาม
กราฟแบบมีทิศทางและไม่มีทิศทาง
ดีกรี
การเก็บกราฟในหน่วยความจำ
เส้นทางและวงจร (Path and Cycle)
วงจรออยเลอร์
วงจรฮามิลโทเนียน
ต้นไม้
ต้นไม้แบบทอดข้าม
การคำนวณเชิงเรขาคณิต
จุด
ส่วนของเส้นตรง
การตัดกันของส่วนของเส้นตรง
รูปหลายเหลี่ยม
ความป่อง (convexity)
ปัญหาข้างใน/ข้างนอก
เทคนิคการออกแบบอัลกอริทึม
อัลกอริทึมแบบตะกละ
การแบ่งแยกและเอาชนะ
การย้อนรอย (backtracking)
แบรนช์แอนด์บาวนด์
ใครหาคำแปลดีกว่านี้ได้ ช่วยด้วย "แขนงและขอบ(เขต)" ?
ไดนามิคโปรแกรมมิ่ง
การเรียงลำดับ
บับเบิลซอร์ท
ฟอง
ซีเลกชันซอร์ท
เลือก
อินเซอร์ชันซอร์ท
แทรก
เชลล์ซอร์ท
เปลือกหอย
ทรีซอร์ท
ต้นไม้
ฮีปซอร์ท
เมิร์จซอร์ท
ยุบ
ควิกซอร์ท
ควิก
ข้อจำกัดของการเรียงลำดับข้อมูลด้วยการเปรียบเทียบข้อมูล
เรดิกซ์ซอร์ท
บักเคทซอร์ท
ถัง
อัลกอริทึมสำหรับจัดการข้อความ
การค้นหาข้อมูล (Searching)
มินิแมกซ์
อัลกอริทึมเพื่อการประมาณ (จะเขียนดีไหม)
ภูมิปัญญาชาวบ้าน (heuristic) (จะเขียนดีไหม)
อัลกอริทึมเกี่ยวกับกราฟ
การค้นหาแบบลึกและการค้นหาแบบกว้าง
การหาเส้นทางที่สั้นที่สุด
การหาการไหลที่สูงที่สุด (Max Flow)
ต้นไม้ทอดข้ามน้อยสุด
ตัวอย่างข้อสอบ
รอบแรก
รอบสอง
ค่าย
ตัวแทน
References
- A Proposal for an IOI Syllabus by Tom Verhoeff, Gyula Horváth, Krzysztof Diks, and Gordon Cormack.
- 204212 โครงสร้างข้อมูลและอัลกอริทึม I
- การเตรียมทีมคอมพิวเตอร์โอลิมปิค 2006
- คณิตศาสตร์มัธยม สสวท
- Digital Library for SchoolNet Thailand
- วิกิพีเดีย
- Tutormaths.com
- ผ.ศ. วัลลภ เฉลิมสุวิวัฒนาการ
- Math E-Book
- Wikipedia, the free encyclopedia
- Programming in C