ผลต่างระหว่างรุ่นของ "ร่างสารบัญ (หนังสือแด่เขมรัตน์)"
Jittat (คุย | มีส่วนร่วม) ล (Reverted edit of 87.101.244.7, changed back to last version by 62.231.243.136) |
|||
แถว 1: | แถว 1: | ||
− | + | == หน้าปก == | |
− | == | + | <center>'''คอมพิวเตอร์โอลิมปิก'''</center> |
− | <center>''' | ||
− | == | + | == หน้าใน == |
− | <center> | + | <center>แด่</center> |
− | <center>''' | + | <center>'''เขมรัตน์ นิ่มปุญญกำพงษ์'''</center> |
− | <center> | + | <center>เพื่อนผู้แสนดี อดีตตัวแทนประเทศไทยไปแข่งคอมพิวเตอร์โอลิมปิก เหรียญทองแดง<!--อีก 4 คะแนนจะเหรียญเงิน--> ปี 1999 ณ ประเทศตุรกี เหรียญเงิน<!--อีก 6.5% จะเหรียญทอง--> ปี 2000 ณ ประเทศจีน</center> |
− | == | + | == คำนำ == |
− | === | + | === ผู้อ่านเป้าหมาย === |
− | + | ผู้ที่ต้องการสอบโอลิมปิกคอมพิวเตอร์ | |
− | === | + | === จุดประสงค์ === |
− | + | เพื่อให้ผู้สามารถเรียนด้วยตัวเองได้ ดังนั้นจำเป็นต้องเขียนให้อ่านง่ายที่สุด อาจจะมีแบบฝึกหัด และ เฉลยสำหรับทุกบท | |
− | == | + | == บทนำ == |
− | + | ในแต่ละปี[http://www.ipst.ac.th/home.asp สสวท.]จะเป็นผู้คัดเลือกตัวแทนประเทศไทยไปสอบแข่งขัน[http://www.ipst.ac.th/olympic/ โอลิมปิกวิชาการ] ซึ่งประเทศไทยส่งตัวแทนเข้าแข่งขันรวม 6 สาขา โดย [http://olympiads.win.tue.nl/ioi/ สาขาคอมพิวเตอร์] ก็เป็นสาขาหนึ่งใน 6 สาขานั้น | |
− | + | สิ่งที่ต้องเตรียมสำหรับการสอบแข่งขัน[http://www.ipst.ac.th/olympic/ โอลิมปิกวิชาการ] [http://olympiads.win.tue.nl/ioi/ สาขาคอมพิวเตอร์]นั้นจำเป็นต้องเตรียมความพร้อมในหลายๆ ด้าน ทั้งที่มีในหลักสูตรมัธยมศึกษา และเนื้อหาเฉพาะทางนอกเหนือในหลักสูตร โดยคณะผู้เขียน ได้รวบรวมเนื้อหาความรู้ที่จำเป็นต้องใช้ในการสอบแข่งขันไว้ และได้แบ่งเนื้อหาออกเป็นบท โดยเรียงลำดับให้ง่ายต่อการทำความเข้าใจ | |
− | == | + | ==เซต==<!--[http://en.wikipedia.org/wiki/Set_theory Set Theory],[http://web.ku.ac.th/schoolnet/snet2/knowledge_math/set/set1.htm เซต]--> |
− | :<em> | + | :<em>ดูบทความจริงได้ที่ [[เซต (หนังสือแด่เขมรัตน์)]]</em> |
<!-- | <!-- | ||
− | === | + | ===นิยามและสัญลักษณ์=== |
− | === | + | ===สมาชิกของเซต=== |
− | === | + | ===จำนวนสมาชิกของเซต=== |
− | ==== | + | ====เซตว่าง==== |
− | ==== | + | ====เซตจำกัด==== |
− | ==== | + | ====เซตอนันต์==== |
− | === | + | ===แผนภาพของเวนน์-ออยเลอร์=== |
− | === | + | ===การเปรียบเทียบเซต=== |
====Subset-Superset==== | ====Subset-Superset==== | ||
− | === | + | ===การดำเนินการกับเซต=== |
====Unions==== | ====Unions==== | ||
====Intersections==== | ====Intersections==== | ||
แถว 40: | แถว 39: | ||
--> | --> | ||
− | == | + | ==ตรรกศาสตร์และการพิสูจน์== |
− | *[[ | + | *[[ตรรกศาสตร์และการพิสูจน์:ตรรกศาสตร์|ตรรกศาสตร์]] |
− | *[[ | + | *[[ตรรกศาสตร์และการพิสูจน์:พีชคณิตบูลลีน|พีชคณิตบูลลีน]] |
− | *[[ | + | *[[ตรรกศาสตร์และการพิสูจน์:หลักรังนกพิราบ|หลักรังนกพิราบ]] |
− | *[[ | + | *[[ตรรกศาสตร์และการพิสูจน์:Paradox|Paradox]] |
− | == | + | ==ระบบเลขฐาน== |
− | *[[ | + | *[[ระบบเลขฐาน:ระบบตัวเลข|ระบบตัวเลข]] |
− | *[[ | + | *[[ระบบเลขฐาน:เลขฐานสิบ|เลขฐานสิบ]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสิบ#การแปลงเลขจากเลขฐานสิบ|การแปลงเลขจากเลขฐานสิบ]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสิบ#การแปลงเลขเป็นเลขฐานสิบ|การแปลงเลขเป็นเลขฐานสิบ]] |
− | *[[ | + | *[[ระบบเลขฐาน:เลขฐานสอง|เลขฐานสอง]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสอง#การบวกเลขในระบบเลขฐานสอง|การบวกเลขในระบบเลขฐานสอง]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสอง#การลบเลขในระบบเลขฐานสอง|การลบเลขในระบบเลขฐานสอง]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสอง#การคูณเลขในระบบเลขฐานสอง|การคูณเลขในระบบเลขฐานสอง]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสอง#การหารเลขในระบบเลขฐานสอง|การหารเลขในระบบเลขฐานสอง]] |
− | *[[ | + | *[[ระบบเลขฐาน:เลขฐานแปด|เลขฐานแปด]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานแปด#การแปลงเลขฐานสองเป็นฐานแปด|การแปลงเลขฐานสองเป็นฐานแปด]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานแปด#การแปลงเลขฐานแปดเป็นฐานสอง|การแปลงเลขฐานแปดเป็นฐานสอง]] |
− | *[[ | + | *[[ระบบเลขฐาน:เลขฐานสิบหก|เลขฐานสิบหก]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสิบหก#การแปลงเลขฐานสองเป็นฐานสิบหก|การแปลงเลขฐานสองเป็นฐานสิบหก]] |
− | **[[ | + | **[[ระบบเลขฐาน:เลขฐานสิบหก#การแปลงเลขฐานสิบหกเป็นฐานสอง|การแปลงเลขฐานสิบหกเป็นฐานสอง]] |
− | == | + | ==คณิตศาสตร์เชิงการจัด== |
− | === | + | ===หลักการพื้นฐาน=== |
− | === | + | ===การเรียงสับเปลี่ยนและการจัดหมู่=== |
− | ==== | + | ====การเรียงสับเปลี่ยนแบบมีตัวซ้ำ==== |
− | ==== | + | ====การเรียงสับเปลี่ยนแบบไม่มีตัวซ้ำ==== |
− | ==== | + | ====การจัดหมู่แบบไม่มีตัวซ้ำ==== |
− | ==== | + | ====การจัดหมู่แบบมีตัวซ้ำ==== |
− | ==== | + | ====เทคนิคสตาร์แอนด์บาร์==== |
− | === | + | ===สัมประสิทธิ์ทวินามและเอกลักษณ์ต่างๆ === |
− | === | + | ===แบบฝึกหัด=== |
− | == | + | ==ความน่าจะเป็น== |
− | === | + | ===แซมเปิลสเปซ=== |
− | + | แซมเปิลสเปซ (Sample Space) | |
− | <!-- === | + | <!-- ===เอกภพสัมพัทธ์=== --> |
− | === | + | ===แซมเปิลพ้อยท์=== |
− | + | แซมเปิลพ้อยท์ (Sample Point) | |
− | === | + | ===เหตุการณ์=== |
− | + | เหตุการณ์ (Event) | |
− | === | + | ===ค่าความน่าจะเป็น=== |
− | + | ความน่าจะเป็น = จำนวนสมาชิกของเหตุการณ์ หารด้วย จำนวนสมาชิกของแซมเปิลสเปส | |
− | === | + | ===คุณสมบัติของความน่าจะเป็น=== |
− | == | + | ==ฟังก์ชัน== |
− | === | + | ===ความสัมพันธ์=== |
− | <!--[http://th.wikipedia.org/wiki/ | + | <!--[http://th.wikipedia.org/wiki/ฟังก์ชัน_(คณิตศาสตร์) วิคิ]--> |
− | === | + | ===นิยาม=== |
− | === | + | ===โดเมน-เรนจ์=== |
− | == | + | ==ลำดับ อนุกรม== |
− | === | + | ===ลำดับ=== |
− | ==== | + | ====ลำดับเลขคณิต==== |
− | ==== | + | ====ลำดับเลขาคณิต==== |
− | ==== | + | ====ลำดับฮาโมนิก==== |
− | === | + | ===อนุกรม=== |
− | ==== | + | ====อนุกรมเลขคณิต==== |
− | ==== | + | ====อนุกรมเลขาคณิต==== |
− | ==== | + | ====อนุกรมฮาโมนิก==== |
− | == | + | ==ทฤษฏีกลุ่ม== |
===Group=== | ===Group=== | ||
===Ring=== | ===Ring=== | ||
===Field=== | ===Field=== | ||
− | == | + | ==เมตริกซ์== |
− | === | + | ===นิยาม=== |
− | === | + | ===การบวกลบเมตริกซ์=== |
− | === | + | ===การคูณเมตริกซ์=== |
− | == | + | ==ทฤษฏีจำนวน (Number Theory)== |
(Kanat: Contents being edited) | (Kanat: Contents being edited) | ||
− | === | + | ===การหารลงตัว (Divisibility) === |
− | ==== | + | ====นิยาม: การหารลงตัว==== |
− | ==== | + | ====ตัวหารร่วมมาก (Greatest Common Divisor)==== |
== Headline text == | == Headline text == | ||
− | ==== | + | ====อัลกอริทึมแบบ''Italic text''--[[ผู้ใช้:124.120.133.155|124.120.133.155]] 22:39, 30 มีนาคม 2007 (ICT) |
− | ==== | + | ====สมการไดโอแฟนไทน์เชิงเส้น==== |
− | === | + | ===จำนวนเฉพาะ=== |
− | ==== | + | ==== ทฤษฎีบทมูลฐานของเลขคณิต ==== |
− | ==== | + | ==== จำนวนเฉพาะมีอยู่มากมาย ==== |
− | ==== | + | ==== การทดสอบจำนวนเฉพาะ ==== |
− | ==== | + | ==== ความหนาแน่นของจำนวนเฉพาะ==== |
− | === | + | ===คอนกรูเอนซ์ (Congruence) === |
− | ==== | + | ==== แนะนำคอนกรูเอนซ์ ==== |
− | ==== | + | ==== คอนกรูเอนซ์พิสดาร ==== |
− | ==== | + | ==== ฟังก์ชันฟีออยเลอร์และทฤษฎีบทของออยเลอร์ ==== |
− | === | + | === เรื่องน่ารู้อื่นๆ === |
− | ==== | + | ==== ตัวเลขพิเศษ ==== |
− | ==== | + | ==== การเข้ารหัสแบบ RSA ==== |
− | ==== | + | ==== อัลกอริทึมเกี่ยวกับทฤษฎีจำนวน ==== |
− | === | + | === โจทย์ต่างๆ === |
− | == | + | == พื้นฐานการเขียนโปรแกรม == |
− | :<em> | + | :<em>ดูบทความจริงได้ที่ [[พื้นฐานการเขียนโปรแกรม(หนังสือแด่เขมรัตน์)|พื้นฐานการเขียนโปรแกรม]]</em> |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:การเตรียมเครื่องมือสำหรับเขียนโปรแกรม|การเตรียมเครื่องมือสำหรับเขียนโปรแกรม]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:Hello World|เริ่มแรกกับ Hello world]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:โครงสร้างภาษา C|โครงสร้างภาษา C]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:ตัวแปร|ตัวแปร]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:ค่าคงที่|ค่าคงที่]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:การแสดงผลออกหน่วยแสดงผลพื้นฐาน|การแสดงผลออกหน่วยแสดงผลพื้นฐาน]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:การรับข้อมูลจากหน่วยรับข้อมูลพื้นฐาน|การรับข้อมูลจากหน่วยรับข้อมูลพื้นฐาน]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:พอยน์เตอร์|พอยน์เตอร์]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:ประโยคเงื่อนไข|ประโยคเงื่อนไข]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:ประโยคกระทำซ้ำ|ประโยคกระทำซ้ำ]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:ฟังก์ชันและโพรซีเยอร์|ฟังก์ชันและโพรซีเยอร์]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:คอมเม้นต์(comment)|คอมเม้นต์(comment)]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:ฟังก์ชั่นเวียนกำเนิด|ฟังก์ชั่นเวียนกำเนิด]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:โครงสร้าง (struct)|โครงสร้าง (struct)]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:การจัดการกับแฟ้มข้อมูล|การจัดการกับแฟ้มข้อมูล]] |
− | * [[ | + | * [[พื้นฐานการเขียนโปรแกรม:การเขียนโปรแกรมแบบปลอดบัก|การเขียนโปรแกรมแบบปลอดบัก]] |
<!-- | <!-- | ||
− | === | + | ===ข้อตกลง=== |
− | ==== | + | ====การเลือกทำ==== |
− | ==== | + | ====การทำซ้ำ==== |
− | + | สิ่งที่อยู่ระหว่าง<nowiki>[[[</nowiki>กับ<nowiki>]]]</nowiki> หมายถึงจะมีกี่ครั้ง หรือไม่มีก็ได้ เช่น | |
<nowiki> | <nowiki> | ||
− | + | ค่าคงที่ [[[ ตัวแปร]]]</nowiki> | |
− | + | หมายความว่าจะมี "ค่าคงที่" อย่างเดียวก็ได้ หรือว่ามี "ค่าคงที่" แล้วตามด้วย " ตัวแปร" กี่ตัวก็ได้ | |
--> | --> | ||
− | == | + | ==ทฤษฎีการคำนวณ== |
− | === | + | ===ออโตมาตาจำกัดและนิพจน์เรกูลาร์=== |
− | === | + | ===ออโมมาตาแบบพุชดาวน์และไวยากรณ์ไม่อิงบริบท=== |
− | === | + | ===เครื่องจักรทัวริง=== |
− | === | + | ===ความบริบูรณ์ NP (NP-completeness)=== |
− | === | + | ===ความยาก NP (NP-hardness)=== |
− | == | + | ==โครงสร้างข้อมูล== |
− | === | + | ===อาร์เรย์และลิงค์ลิสต์=== |
− | === | + | ===คิวและสแตก=== |
− | === | + | ===ดิสจอยนท์เซต=== |
− | === | + | ===ฮีปทวิภาค=== |
− | === | + | ===ต้นไม้ค้นหาแบบทวิภาค=== |
− | === | + | ===เซตแบบพลวัต=== |
− | === | + | ===ดิกชันนารีแบบพลวัต=== |
− | == | + | ==ทฤษฏีกราฟ== |
− | === | + | ===นิยาม=== |
− | ==== | + | ====กราฟแบบมีทิศทางและไม่มีทิศทาง==== |
− | ==== | + | ====ดีกรี==== |
− | === | + | ===การเก็บกราฟในหน่วยความจำ=== |
− | === | + | ===เส้นทางและวงจร (Path and Cycle) === |
− | ==== | + | ====วงจรออยเลอร์==== |
− | ==== | + | ====วงจรฮามิลโทเนียน==== |
− | === | + | ===ต้นไม้=== |
− | ==== | + | ====ต้นไม้แบบทอดข้าม==== |
− | == | + | ==การคำนวณเชิงเรขาคณิต== |
− | === | + | ===จุด=== |
− | === | + | ===ส่วนของเส้นตรง=== |
− | ==== | + | ====การตัดกันของส่วนของเส้นตรง==== |
− | === | + | ===รูปหลายเหลี่ยม=== |
− | ==== | + | ====ความป่อง (convexity)==== |
− | ==== | + | ====ปัญหาข้างใน/ข้างนอก==== |
− | == | + | == เทคนิคการออกแบบอัลกอริทึม == |
− | === | + | === อัลกอริทึมแบบตะกละ === |
− | === | + | === การแบ่งแยกและเอาชนะ === |
− | === | + | === การย้อนรอย (backtracking) === |
− | === | + | === แบรนช์แอนด์บาวนด์ === |
− | + | ใครหาคำแปลดีกว่านี้ได้ ช่วยด้วย | |
− | " | + | "แขนงและขอบ(เขต)" ? |
− | === | + | ===ไดนามิคโปรแกรมมิ่ง=== |
− | === | + | ===การเรียงลำดับ=== |
− | ==== | + | ====บับเบิลซอร์ท==== |
− | + | ฟอง | |
− | ==== | + | ====ซีเลกชันซอร์ท==== |
− | + | เลือก | |
− | ==== | + | ====อินเซอร์ชันซอร์ท==== |
− | + | แทรก | |
− | ==== | + | ====เชลล์ซอร์ท==== |
− | + | เปลือกหอย | |
− | ==== | + | ====ทรีซอร์ท==== |
− | + | ต้นไม้ | |
− | ==== | + | ====ฮีปซอร์ท==== |
− | ==== | + | ====เมิร์จซอร์ท==== |
− | + | ยุบ | |
− | ==== | + | ====ควิกซอร์ท==== |
− | + | ควิก | |
− | ==== | + | ====ข้อจำกัดของการเรียงลำดับข้อมูลด้วยการเปรียบเทียบข้อมูล==== |
− | ==== | + | ====เรดิกซ์ซอร์ท==== |
− | ==== | + | ====บักเคทซอร์ท==== |
− | + | ถัง | |
− | == | + | ==อัลกอริทึมสำหรับจัดการข้อความ== |
− | == | + | ==การค้นหาข้อมูล (Searching)== |
− | === | + | ===มินิแมกซ์=== |
− | == | + | ==อัลกอริทึมเพื่อการประมาณ (จะเขียนดีไหม)== |
− | == | + | ==ภูมิปัญญาชาวบ้าน (heuristic) (จะเขียนดีไหม)== |
− | == | + | == อัลกอริทึมเกี่ยวกับกราฟ == |
− | === | + | === การค้นหาแบบลึกและการค้นหาแบบกว้าง=== |
− | === | + | === การหาเส้นทางที่สั้นที่สุด === |
− | === | + | === การหาการไหลที่สูงที่สุด (Max Flow) === |
− | === | + | === ต้นไม้ทอดข้ามน้อยสุด === |
− | == | + | == ตัวอย่างข้อสอบ == |
− | === | + | ===รอบแรก=== |
− | === | + | ===รอบสอง=== |
− | === | + | ===ค่าย=== |
− | === | + | ===ตัวแทน=== |
− | *[http://www.ioi99.org.tr/tasks/index.html | + | *[http://www.ioi99.org.tr/tasks/index.html ปี1999] |
− | *[http://olympiads.win.tue.nl/ioi/ioi2000/contest/index.html | + | *[http://olympiads.win.tue.nl/ioi/ioi2000/contest/index.html ปี2000] |
==References== | ==References== | ||
− | *[http://www.win.tue.nl/~wstomv/publications/ioi-syllabus-proposal.pdf A Proposal for an IOI Syllabus] by Tom Verhoeff, Gyula | + | *[http://www.win.tue.nl/~wstomv/publications/ioi-syllabus-proposal.pdf A Proposal for an IOI Syllabus] by Tom Verhoeff, Gyula Horváth, Krzysztof Diks, and Gordon Cormack. |
− | *[http://www.cpe.ku.ac.th/~jtf/204212-46/ 204212 | + | *[http://www.cpe.ku.ac.th/~jtf/204212-46/ 204212 โครงสร้างข้อมูลและอัลกอริทึม I] |
− | *[http://theory.cpe.ku.ac.th/index.php/IOI_training_2006 | + | *[http://theory.cpe.ku.ac.th/index.php/IOI_training_2006 การเตรียมทีมคอมพิวเตอร์โอลิมปิค 2006] |
− | *[http://www.ipst.ac.th/smath/ | + | *[http://www.ipst.ac.th/smath/ คณิตศาสตร์มัธยม สสวท] |
*[http://web.ku.ac.th/schoolnet/ Digital Library for SchoolNet Thailand] | *[http://web.ku.ac.th/schoolnet/ Digital Library for SchoolNet Thailand] | ||
− | *[http://th.wikipedia.org/wiki/ | + | *[http://th.wikipedia.org/wiki/ วิกิพีเดีย] |
*[http://www.tutormaths.com/ Tutormaths.com] | *[http://www.tutormaths.com/ Tutormaths.com] | ||
− | *[http://elearning.utcc.ac.th/courseonline/wallop/ | + | *[http://elearning.utcc.ac.th/courseonline/wallop/ ผ.ศ. วัลลภ เฉลิมสุวิวัฒนาการ] |
*[http://se-ed.net/longdo/ Math E-Book] | *[http://se-ed.net/longdo/ Math E-Book] | ||
*[http://en.wikipedia.org/wiki/Main_Page Wikipedia, the free encyclopedia] | *[http://en.wikipedia.org/wiki/Main_Page Wikipedia, the free encyclopedia] | ||
*[http://www.cs.cf.ac.uk/Dave/C/ Programming in C] | *[http://www.cs.cf.ac.uk/Dave/C/ Programming in C] |
รุ่นแก้ไขเมื่อ 10:30, 12 ตุลาคม 2550
เนื้อหา
- 1 หน้าปก
- 2 หน้าใน
- 3 คำนำ
- 4 บทนำ
- 5 เซต
- 6 ตรรกศาสตร์และการพิสูจน์
- 7 ระบบเลขฐาน
- 8 คณิตศาสตร์เชิงการจัด
- 9 ความน่าจะเป็น
- 10 ฟังก์ชัน
- 11 ลำดับ อนุกรม
- 12 ทฤษฏีกลุ่ม
- 13 เมตริกซ์
- 14 ทฤษฏีจำนวน (Number Theory)
- 15 Headline text
- 16 พื้นฐานการเขียนโปรแกรม
- 17 ทฤษฎีการคำนวณ
- 18 โครงสร้างข้อมูล
- 19 ทฤษฏีกราฟ
- 20 การคำนวณเชิงเรขาคณิต
- 21 เทคนิคการออกแบบอัลกอริทึม
- 22 อัลกอริทึมสำหรับจัดการข้อความ
- 23 การค้นหาข้อมูล (Searching)
- 24 อัลกอริทึมเพื่อการประมาณ (จะเขียนดีไหม)
- 25 ภูมิปัญญาชาวบ้าน (heuristic) (จะเขียนดีไหม)
- 26 อัลกอริทึมเกี่ยวกับกราฟ
- 27 ตัวอย่างข้อสอบ
- 28 References
หน้าปก
หน้าใน
คำนำ
ผู้อ่านเป้าหมาย
ผู้ที่ต้องการสอบโอลิมปิกคอมพิวเตอร์
จุดประสงค์
เพื่อให้ผู้สามารถเรียนด้วยตัวเองได้ ดังนั้นจำเป็นต้องเขียนให้อ่านง่ายที่สุด อาจจะมีแบบฝึกหัด และ เฉลยสำหรับทุกบท
บทนำ
ในแต่ละปีสสวท.จะเป็นผู้คัดเลือกตัวแทนประเทศไทยไปสอบแข่งขันโอลิมปิกวิชาการ ซึ่งประเทศไทยส่งตัวแทนเข้าแข่งขันรวม 6 สาขา โดย สาขาคอมพิวเตอร์ ก็เป็นสาขาหนึ่งใน 6 สาขานั้น
สิ่งที่ต้องเตรียมสำหรับการสอบแข่งขันโอลิมปิกวิชาการ สาขาคอมพิวเตอร์นั้นจำเป็นต้องเตรียมความพร้อมในหลายๆ ด้าน ทั้งที่มีในหลักสูตรมัธยมศึกษา และเนื้อหาเฉพาะทางนอกเหนือในหลักสูตร โดยคณะผู้เขียน ได้รวบรวมเนื้อหาความรู้ที่จำเป็นต้องใช้ในการสอบแข่งขันไว้ และได้แบ่งเนื้อหาออกเป็นบท โดยเรียงลำดับให้ง่ายต่อการทำความเข้าใจ
เซต
- ดูบทความจริงได้ที่ เซต (หนังสือแด่เขมรัตน์)
ตรรกศาสตร์และการพิสูจน์
ระบบเลขฐาน
คณิตศาสตร์เชิงการจัด
หลักการพื้นฐาน
การเรียงสับเปลี่ยนและการจัดหมู่
การเรียงสับเปลี่ยนแบบมีตัวซ้ำ
การเรียงสับเปลี่ยนแบบไม่มีตัวซ้ำ
การจัดหมู่แบบไม่มีตัวซ้ำ
การจัดหมู่แบบมีตัวซ้ำ
เทคนิคสตาร์แอนด์บาร์
สัมประสิทธิ์ทวินามและเอกลักษณ์ต่างๆ
แบบฝึกหัด
ความน่าจะเป็น
แซมเปิลสเปซ
แซมเปิลสเปซ (Sample Space)
แซมเปิลพ้อยท์
แซมเปิลพ้อยท์ (Sample Point)
เหตุการณ์
เหตุการณ์ (Event)
ค่าความน่าจะเป็น
ความน่าจะเป็น = จำนวนสมาชิกของเหตุการณ์ หารด้วย จำนวนสมาชิกของแซมเปิลสเปส
คุณสมบัติของความน่าจะเป็น
ฟังก์ชัน
ความสัมพันธ์
นิยาม
โดเมน-เรนจ์
ลำดับ อนุกรม
ลำดับ
ลำดับเลขคณิต
ลำดับเลขาคณิต
ลำดับฮาโมนิก
อนุกรม
อนุกรมเลขคณิต
อนุกรมเลขาคณิต
อนุกรมฮาโมนิก
ทฤษฏีกลุ่ม
Group
Ring
Field
เมตริกซ์
นิยาม
การบวกลบเมตริกซ์
การคูณเมตริกซ์
ทฤษฏีจำนวน (Number Theory)
(Kanat: Contents being edited)
การหารลงตัว (Divisibility)
นิยาม: การหารลงตัว
ตัวหารร่วมมาก (Greatest Common Divisor)
Headline text
====อัลกอริทึมแบบItalic text--124.120.133.155 22:39, 30 มีนาคม 2007 (ICT)
สมการไดโอแฟนไทน์เชิงเส้น
จำนวนเฉพาะ
ทฤษฎีบทมูลฐานของเลขคณิต
จำนวนเฉพาะมีอยู่มากมาย
การทดสอบจำนวนเฉพาะ
ความหนาแน่นของจำนวนเฉพาะ
คอนกรูเอนซ์ (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