โลโก้
ยูเนี่ยนพีเดีย
การสื่อสาร
ดาวน์โหลดได้จาก Google Play
ใหม่! ดาวน์โหลด ยูเนี่ยนพีเดีย บน Android ™ของคุณ!
ฟรี
เร็วกว่าเบราว์เซอร์!
 

ขั้นตอนวิธี

ดัชนี ขั้นตอนวิธี

ั้นตอนวิธี หรือ อัลกอริทึม (algorithm) หมายถึงกระบวนการแก้ปัญหาที่สามารถเข้าใจได้ มีลำดับหรือวิธีการในการแก้ไขปัญหาใดปัญหาหนึ่งอย่างเป็นขั้นเป็นตอนและชัดเจน เมื่อนำเข้าอะไร แล้วจะต้องได้ผลลัพธ์เช่นไร ซึ่งแตกต่างจากการแก้ปัญหาแบบสามัญสำนึก หรือฮิวริสติก (heuristic) โดยทั่วไป ขั้นตอนวิธี จะประกอบด้วย วิธีการเป็นขั้นๆ และมีส่วนที่ต้องทำแบบวนซ้ำ (iterate) หรือ เวียนเกิด (recursive) โดยใช้ตรรกะ (logic) และ/หรือ ในการเปรียบเทียบ (comparison) ในขั้นตอนต่างๆ จนกระทั่งเสร็จสิ้นการทำงาน ในการทำงานอย่างเดียวกัน เราอาจจะเลือกขั้นตอนวิธีที่ต่างกันเพื่อแก้ปัญหาได้ โดยที่ผลลัพธ์ที่ได้ในขั้นสุดท้ายจะออกมาเหมือนกันหรือไม่ก็ได้ และจะมีความแตกต่าง ที่จำนวนและชุดคำสั่งที่ใช้ต่างกันซึ่งส่งผลให้ เวลา (time), และขนาดหน่วยความจำ (space) ที่ต้องการต่างกัน หรือเรียกได้อีกอย่างว่ามีความซับซ้อน (complexity) ต่างกัน การนำขั้นตอนวิธีไปใช้ ไม่จำกัดเฉพาะการเขียนโปรแกรมคอมพิวเตอร์ แต่สามารถใช้กับปัญหาอื่น ๆ ได้เช่น การออกแบบวงจรไฟฟ้า, การทำงานเครื่องจักรกล, หรือแม้กระทั่งปัญหาในธรรมชาติ เช่น วิธีของสมองมนุษย์ในการคิดเลข หรือวิธีการขนอาหารของแมลง หนึ่งในขั้นตอนวิธีอย่างง่าย คือ ขั้นตอนวิธีที่ใช้หาจำนวนที่มีค่ามากที่สุดในรายการ (ซึ่งไม่ได้เรียงลำดับไว้) ในการแก้ปัญหานี้ เราจะต้องดูจำนวนทุกจำนวนในรายการ ซึ่งมีขั้นตอนวิธีดังนี้.

31 ความสัมพันธ์: ชาลส์ แบบบิจพ.ศ. 2385การกำหนดค่าการคำนวณการเรียกซ้ำมุฮัมมัด อิบน์ มูซา อัลคอวาริซมีย์รหัสเทียมรายชื่อขั้นตอนวิธีวิชาการ.คอมวิทยาการคอมพิวเตอร์ศึกษาสำนึกสำนักงานราชบัณฑิตยสภาหน่วยความจำผังงานขั้นตอนวิธีการค้นหาขั้นตอนวิธีการค้นหาคำแบบซีขั้นตอนวิธีการประมาณขั้นตอนวิธีการเรียงลำดับขั้นตอนวิธีแบบสุ่มขั้นตอนวิธีโรห์ของพอลลาร์ดขั้นตอนวิธีเชิงพันธุกรรมคอมพิวเตอร์ตรรกศาสตร์ประเทศอิหร่านนักเขียนโปรแกรมแอลัน ทัวริงโครงสร้างข้อมูลโปรแกรมคอมพิวเตอร์เอดา เลิฟเลซเครือข่ายไฟฟ้าเครื่องทัวริง

ชาลส์ แบบบิจ

ลส์ แบบบิจ (26 ธันวาคม พ.ศ. 2334 - 18 ตุลาคม พ.ศ. 2414) ''On the economy of machinery and manufactures'', 1835 ชาลส์ แบบเบจ (Charles Babbage) เกิดวันที่ 26 ธันวาคม ปี ค.ศ. 1791 (พ.ศ. 2334) ที่อังกฤษ ในครอบครัวของนายธนาคาร แบบบิจเติบโตมาในยุคที่อังกฤษเป็นมหาอำนาจ และกำลังอยู่ในช่วงการปฏิวัติอุตสาหกรรม โดยรัฐบาลสนับสนุนให้ทุนการพัฒนาในสาขาต่าง ๆ อย่างเต็มที.

ใหม่!!: ขั้นตอนวิธีและชาลส์ แบบบิจ · ดูเพิ่มเติม »

พ.ศ. 2385

ทธศักราช 2385 ใกล้เคียงกั.

ใหม่!!: ขั้นตอนวิธีและพ.ศ. 2385 · ดูเพิ่มเติม »

การกำหนดค่า

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

ใหม่!!: ขั้นตอนวิธีและการกำหนดค่า · ดูเพิ่มเติม »

การคำนวณ

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

ใหม่!!: ขั้นตอนวิธีและการคำนวณ · ดูเพิ่มเติม »

การเรียกซ้ำ

การเรียกซ้ำ (recursion) หรือ การเวียนเกิด (recurrence) เป็นปรากฏการณ์ที่มีการกลับไปอ้างอิงถึงตนเอง (self-reference) หรือมีนิยามเช่นเดียวกันในลำดับต่ำลงไป ปรากฏการณ์นี้มีปรากฏในหลายด้านเช่น คณิตศาสตร์ วิทยาการคอมพิวเตอร์ ศิลปะ ดนตรี การสร้างปฏิทรรศน์ เป็นต้น.

ใหม่!!: ขั้นตอนวิธีและการเรียกซ้ำ · ดูเพิ่มเติม »

มุฮัมมัด อิบน์ มูซา อัลคอวาริซมีย์

อัลคอวาริซมีย์ บนแสตมป์ของสหภาพโซเวียต ในโอกาสระลึกถึงชาตกาลครบรอบ 1,200 ปี อะบู อับดัลลาหฺ มุฮัมมัด อิบน์ มูซา อัลคอวาริซมีย์ (Abū ʿAbdallāh Muḥammad ibn Mūsā al-Khwārizmī) (ค.ศ. 780-ค.ศ. 850) เป็นนักวิทยาศาสตร์ นักคณิตศาสตร์ นักดาราศาสตร์ นักโหราศาสตร์ นักภูมิศาสตร์ อีกทั้งยังเป็นนักเขียน และนักแปล.

ใหม่!!: ขั้นตอนวิธีและมุฮัมมัด อิบน์ มูซา อัลคอวาริซมีย์ · ดูเพิ่มเติม »

รหัสเทียม

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

ใหม่!!: ขั้นตอนวิธีและรหัสเทียม · ดูเพิ่มเติม »

รายชื่อขั้นตอนวิธี

ทความนี้แสดงถึงรายชื่อขั้นตอนวิธีพร้อมรายละเอียดอย่างสั้น.

ใหม่!!: ขั้นตอนวิธีและรายชื่อขั้นตอนวิธี · ดูเพิ่มเติม »

วิชาการ.คอม

วิชาการ.คอม (vcharkarn.com) เป็นเว็บไซต์ไทยมีจุดหมายไว้เป็นแหล่งข้อมูลข้อมูลภาษาไทย ก่อตั้งโดย ดร.อรรถกฤต ฉัตรภูติ ผ.ดร.บุญญฤทธิ์ อุยยานนวาระ และ ดร.พิเชษฐ กิจธารา ทีมงานของ วิชาการ.คอม เป็นอาสาสมัครเสนอตัวเข้าช่วย ในการให้ทั้งองค์ความรู้ และแลกเปลี่ยนประสบการณ์ ด้านงานวิชาการ ทั้งด้านแนวคิด ด้านข้อเสนอแนะ วิชาการ.คอม ก่อตั้งภายใต้การรับรองและสนับสนุนโดย สถาบันส่งเสริมการสอนวิทยาศาสตร์และเทคโนโลยี (สสวท) วิชาการ.คอม เป็นเว็บไซต์ที่มีผู้เข้าชมจากประเทศไทยมากเป็นอันดับที่ 563 (19 กันยายน 2557) จากการจัดอันดับโดยอะเล็กซ.

ใหม่!!: ขั้นตอนวิธีและวิชาการ.คอม · ดูเพิ่มเติม »

วิทยาการคอมพิวเตอร์

วิทยาการคอมพิวเตอร์ หรือ วิทยาศาสตร์คอมพิวเตอร์ (Computer science) เป็นศาสตร์เกี่ยวกับการศึกษาค้นคว้าทฤษฎีการคำนวณสำหรับคอมพิวเตอร์ และทฤษฎีการประมวลผลสารสนเทศ ทั้งด้านซอฟต์แวร์ ฮาร์ดแวร์ และ เครือข่าย ซึ่งวิทยาการคอมพิวเตอร์นั้นประกอบด้วยหลายหัวข้อที่เกี่ยวข้องกับคอมพิวเตอร์ ตั้งแต่ระดับนามธรรม หรือความคิดเชิงทฤษฎี เช่น การวิเคราะห์และสังเคราะห์ขั้นตอนวิธี ไปจนถึงระดับรูปธรรม เช่น ทฤษฎีภาษาโปรแกรม ทฤษฎีการพัฒนาซอฟต์แวร์ ทฤษฎีฮาร์ดแวร์คอมพิวเตอร์ และ ทฤษฎีเครือข่าย ในแง่ของศาสตร์เกี่ยวกับคอมพิวเตอร์นั้น วิทยาการคอมพิวเตอร์เป็นหนึ่งในห้าสาขาวิชาคอมพิวเตอร์ ซึ่งประกอบด้วย สาขาวิทยาการคอมพิวเตอร์ หรือวิทยาศาสตรคอมพิวเตอร์ สาขาวิศวกรรมคอมพิวเตอร์ สาขาวิศวกรรมซอฟต์แวร์ สาขาเทคโนโลยีสารสนเทศ หรือเทคโนโลยีสารสนเทศและการสือสาร และ สาขาคอมพิวเตอร์ธุรกิจ หรือ ระบบสารสนเทศทางธุรก.

ใหม่!!: ขั้นตอนวิธีและวิทยาการคอมพิวเตอร์ · ดูเพิ่มเติม »

ศึกษาสำนึก

ปกติการออกแบบหรือค้นหาขั้นตอนวิธี หรือขั้นตอนวิธี ที่ดีเพื่อการหาผลลัพธ์หรือแก้ปัญหาด้วยคอมพิวเตอร์นั้นมีเป้าหมายพื้นฐานอยู่ 2 ประการ คือ.

ใหม่!!: ขั้นตอนวิธีและศึกษาสำนึก · ดูเพิ่มเติม »

สำนักงานราชบัณฑิตยสภา

ำนักงานราชบัณฑิตยสภา (Office of the Royal Society) หรือชื่อเดิมว่า ราชบัณฑิตยสถาน (the Royal Institute), ข่าวประชาสัมพันธ์ เว็บไซต.

ใหม่!!: ขั้นตอนวิธีและสำนักงานราชบัณฑิตยสภา · ดูเพิ่มเติม »

หน่วยความจำ

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

ใหม่!!: ขั้นตอนวิธีและหน่วยความจำ · ดูเพิ่มเติม »

ผังงาน

ตัวอย่างผังงานอย่างง่ายแสดงการแก้ปัญหาโคมไฟที่เปิดไม่ติด ผังงาน หรือ โฟลว์ชาร์ต (flowchart) เป็นแผนภาพแสดงขั้นตอนการทำงานของโปรแกรม โดยใช้สัญลักษณ์ต่างๆ เชื่อมกันเป็นลำดับขั้นตอนด้วยลูกศร.

ใหม่!!: ขั้นตอนวิธีและผังงาน · ดูเพิ่มเติม »

ขั้นตอนวิธีการค้นหา

ขั้นตอนวิธีการสืบค้น (search algorithm) เป็นขั้นตอนวิธีสำหรับการค้นหารายการที่มีคุณสมบัติตามระบุจากรายการทั้งหมด รายการที่ต้องการอาจเก็บเป็นเอกเทศเช่น ระเบียน (records) ในฐานข้อมูล หรืออาจเป็นอิลีเมนต์ของพื้นที่การค้นหาที่นิยามโดยสูตรคณิตศาสตร์หรือกระบวนการ เช่นรากของสมการที่มีตัวแปรเป็นเลขจำนวนเต็ม หรือทั้งสองวิธีรวมกัน เช่น วงจรแฮมิโตเนียนของกราฟ เป็นต้น หมวดหมู่:ขั้นตอนวิธีการค้นหา.

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีการค้นหา · ดูเพิ่มเติม »

ขั้นตอนวิธีการค้นหาคำแบบซี

ในวิทยาการคอมพิวเตอร์ ขั้นตอนวิธีนี้ คือ ขั้นตอนวิธีที่เอาไว้ใช้ในการหารูปแบบคำ(pattern)ในคำ(text) โดยเราให้ความยาวของคำ(text) เป็น n และคำเป็น m แล้วผลรวมของเวลาที่ใช้ในการประมวลผล คือ O(n+m) ซึ่งจะเหมือนกับขั้นตอนวิธีของคนูธ-มอร์ริส-แพรตต์            ขั้นตอนวิธี-ซี เป็นขั้นตอนวิธีแบบตรงไปตรงมา (Brute-Force algorithm) ซึ่งเกิดจากการทำงานวนลูปรูปแบบคำ(pattern) n ครั้ง และวนรูปคำ(text) อีก m ครั้ง ทำให้ประสิทธิภาพของเวลาการทำงานของโปรแกรมเป็น O(n+m).

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีการค้นหาคำแบบซี · ดูเพิ่มเติม »

ขั้นตอนวิธีการประมาณ

ั้นตอนวิธีการประมาณ ในศาสตร์ด้านวิทยาการคอมพิวเตอร์นั้น เป็นวิธีการหนึ่งที่ใช้สำหรับจัดการกับปัญหาการหาค่าเหมาะที่สุดประเภทเอ็นพี-ฮาร์ด เนื่องจากเป็นที่เชื่อกันว่าไม่มีขั้นตอนวิธีใดที่มีประสิทธิภาพ (ทำงานได้รวดเร็ว) ที่สามารถแก้ไขปัญหาเอ็นพี-ฮาร์ดได้คำตอบที่เที่ยงตรง จึงได้เกิดความพยายามที่จะหาคำตอบที่อาจจะไม่ถูกต้องที่สุด แต่สามารถหาได้ในเวลาโพลิโนเมียล ข้อแตกต่างของขั้นตอนวิธีประเภทนี้กับฮิวริสติก (ซึ่งมักเป็นการหาคำตอบที่ดีในระดับหนึ่งโดยใช้เวลาไม่มากนัก) ก็คือ ขั้นตอนวิธีประมาณต้องการคำตอบที่สามารถพิสูจน์ได้ว่าดีเพียงใด และพิสูจน์ได้ว่ามีขอบเขตการใช้เวลาไม่เกินเท่าใด ขั้นตอนวิธีในอุดมคติมักจะต้องผิดไปจากคำตอบจริงไม่เกินค่าคงที่ค่าหนึ่ง (เช่น คลาดเคลื่อนไม่เกิน 5%) ปัญหาเอ็นพี-ฮาร์ดมีความหลากหลายอย่างมากในแง่ของการประมาณค่า บางปัญหาสามารถประมาณได้เป็นอัตราส่วนขนาดหนึ่ง (ขั้นตอนวิธีสำหรับประมาณปัญหาเหล่านี้มักเรียกกันว่า แบบแผนการประมาณในเวลาโพลิโนเมียล (polynomial time approximation scheme) หรือ PTAS) ส่วนบางปัญหานั้นก็ไม่สามารถที่จะประมาณได้เลย ตัวอย่างของขั้นตอนวิธีประมาณที่มักกล่าวถึงกัน ได้แก่ ขั้นตอนวิธีสำหรับการคลุมจุดยอดในกราฟ โจทย์คือเลือกจุดยอดจำนวนน้อยที่สุด ให้ทุก ๆ ด้านมีปลายอย่างน้อยข้างหนึ่งถูกเลือก ขั้นตอนวิธีสำหรับประมาณปัญหานี้คือ หาด้านที่ยังไม่ถูกคลุม (ยังไม่มีปลายข้างใดถูกเลือก) มา แล้วเลือกปลายทั้งคู่ของด้านนี้ ขั้นตอนวิธีนี้ให้ผลลัพธ์ที่มีขนาดไม่เกินสองเท่าของคำตอบที่ดีที่สุด วิธีหนึ่งที่ใช้ได้ผลบ่อยในการหาขั้นตอนวิธีประมาณคือ การพิจารณาการผ่อน (relax) กำหนดการเชิงเส้น ใช่ว่าขั้นตอนวิธีประมาณทุกอันจะเหมาะสมกับงานในทางปฏิบัติ ตัวอย่างเช่น คนส่วนใหญ่คงไม่ค่อยประทับใจนัก กับขั้นตอนวิธีที่ช่วยให้พวกเขาจ่ายเงินไม่เกิน 20 เท่าของค่าใช้จ่ายที่ถูกที่สุด และเช่นกัน บางขั้นตอนวิธีอาจมีเวลาในการทำงานที่ไม่ค่อยดีนัก (ถึงแม้จะเป็นเวลาโพลิโนเมียลก็ตาม) เช่น O (n^) ข้อจำกัดอีกอย่างหนึ่งของวิธีการนี้ก็คือ มันใช้ได้กับปัญหาการหาค่าเหมาะที่สุด (optimization problem) เท่านั้น ไม่สามารถใช้กับปัญหาการตัดสินใจ“แท้ ๆ” เช่น ปัญหาความสอดคล้องแบบบูล ได้.

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีการประมาณ · ดูเพิ่มเติม »

ขั้นตอนวิธีการเรียงลำดับ

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

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีการเรียงลำดับ · ดูเพิ่มเติม »

ขั้นตอนวิธีแบบสุ่ม

ั้นตอนวิธีแบบสุ่ม (randomized algorithm) เป็นขั้นตอนวิธีที่ยอมให้มีการโยนเหรียญได้ ในทางปฏิบัติ เครื่องที่ใช้ทำงานขั้นตอนวิธีนี้ จะต้องใช้ตัวสร้างเลขสุ่มเทียม (pseudo-random number generator) ในการสร้างตัวเลขสุ่มขึ้นมา อัลกอรึทึมโดยทั่วๆไปมักใช้บิทสุ่ม (random bit) สำหรับเป็นอินพุตเสริม เพื่อชี้นำการกระทำของมันต่อไป โดยมีความหวังว่าจะช่วยให้มีประสิทธิภาพที่ดีใน "กรณีส่วนมาก (average case)" หรือหากพูดในทางคณิตศาสตร์ก็คือ ประสิทธิภาพของขั้นตอนวิธีมีค่าเท่ากับตัวแปรสุ่ม (random variable) ซึ่งคำนวณจากบิทสุ่ม โดยหวังว่าจะมีค่าคาดหมาย (expected value) ที่ดี กรณีที่แย่มากที่สุดมักจะมีโอกาสเกิดขึ้นน้อยมากจนแทบจะไม่ต้องสนใ.

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีแบบสุ่ม · ดูเพิ่มเติม »

ขั้นตอนวิธีโรห์ของพอลลาร์ด

ั้นตอนวิธีโรห์ของพอลลาร์ด (Pollard's rho algorithm) เป็นขั้นตอนวิธีแบบสุ่มที่ใช้หาตัวประกอบของจำนวนประกอบที่มีค่ามาก โดยอาศัยคุณสมบัติของการหาร เพื่อให้หาตัวประกอบของเลขจำนวนนั้น ๆ ได้เร็ว ขั้นตอนวิธีนี้ จอห์น พอลลาร์ด (John Pollard) นำเสนอขึ้นในปี 1975 และต่อมา ริชาร์ด เบรนท์ (Richard Brent) ปรับปรุงในปี 1980.

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีโรห์ของพอลลาร์ด · ดูเพิ่มเติม »

ขั้นตอนวิธีเชิงพันธุกรรม

ั้นตอนวิธีเชิงพันธุกรรม (genetic algorithm) เป็นเทคนิคสำหรับค้นหาผลเฉลย (solutions) หรือคำตอบโดยประมาณของปัญหา โดยอาศัยหลักการจากทฤษฎีวิวัฒนาการจากชีววิทยา และ การคัดเลือกตามธรรมชาติ (natural selection) นั่นคือ สิ่งมีชีวิตที่เหมาะสมที่สุดจึงจะอยู่รอด กระบวนการคัดเลือกได้เปลี่ยนแปลงสิ่งมีชีวิตให้เหมาะสมยิ่งขึ้น ด้วยตัวปฏิบัติการทางพันธุกรรม (genetic operator) เช่น การสืบพันธุ์ (inheritance หรือ reproduction), การกลายพันธุ์ (mutation), การแลกเปลี่ยนยีน (recombination) ขั้นตอนวิธีเชิงพันธุกรรมเป็นการจำลองทางคอมพิวเตอร์ เพื่อแก้ปัญหาหาค่าเหมาะที่สุด (optimal solution) โดยการแทนคำตอบที่มีอยู่ให้อยู่ในลักษณะ โครโมโซม (chromosomes) แล้วปรับปรุงคำตอบแต่ละชุด (เรียกว่า individual) ด้วยวิธีการต่าง ๆ ซึ่งเกี่ยวข้องกับการวิวัฒนาการ (evolutionary operation) การเปลี่ยนแปลงยีนแบบสุ่ม ด้วยตัวปฏิบัติการทางพันธุกรรม (evolutionary operator) เพื่อให้ได้คำตอบที่ดีขึ้น โดยทั่วไปจะแทนคำตอบด้วยเลขฐานสอง (สายอักขระของเลข 0 และ 1) การวิวัฒน์ (evolution) เพื่อหาคำตอบที่เหมาะสมที่สุด (the fitness solution) จะเริ่มจากประชากรที่ได้จากการสุ่มทั้งหมดและจะทำเป็นรุ่น ๆ ในแต่ละรุ่นคำตอบหลายชุดจะถูกสุ่มเลือกขึ้นมาเปลี่ยนแปลง ซึ่งอาจจะทำให้เกิดการกลายพันธุ์ หรือสับเปลี่ยนยีนระหว่างกัน จนได้ประชากรรุ่นใหม่ ที่มีค่าความเหมาะสม (fitness) มากขึ้น การวิวัฒน์นี้จะทำไปเรื่อย ๆ จนกระทั่งพบคำตอบที่มีค่าความเหมาะสมตามต้องการ.

ใหม่!!: ขั้นตอนวิธีและขั้นตอนวิธีเชิงพันธุกรรม · ดูเพิ่มเติม »

คอมพิวเตอร์

อบีเอ็ม โรดรันเนอร์ - ซูเปอร์คอมพิวเตอร์ที่เร็วที่สุดในโลกผลิตโดยไอบีเอ็มและสถาบันวิจัยแห่งชาติลอสอะลาโมส (2551) http://www.cnn.com/2008/TECH/06/09/fastest.computer.ap/ Government unveils world's fastest computer จากซีเอ็นเอ็น คอมพิวเตอร์ (computer) หรือในภาษาไทยว่า คณิตกรณ์ เป็นเครื่องจักรแบบสั่งการได้ที่ออกแบบมาเพื่อดำเนินการกับลำดับตัวดำเนินการทางตรรกศาสตร์หรือคณิตศาสตร์ โดยอนุกรมนี้อาจเปลี่ยนแปลงได้เมื่อพร้อม ส่งผลให้คอมพิวเตอร์สามารถแก้ปัญหาได้มากมาย คอมพิวเตอร์ถูกประดิษฐ์ออกมาให้ประกอบไปด้วยความจำรูปแบบต่าง ๆ เพื่อเก็บข้อมูล อย่างน้อยหนึ่งส่วนที่มีหน้าที่ดำเนินการคำนวณเกี่ยวกับตัวดำเนินการทางตรรกศาสตร์ และตัวดำเนินการทางคณิตศาสตร์ และส่วนควบคุมที่ใช้เปลี่ยนแปลงลำดับของตัวดำเนินการโดยยึดสารสนเทศที่ถูกเก็บไว้เป็นหลัก อุปกรณ์เหล่านี้จะยอมให้นำเข้าข้อมูลจากแหล่งภายนอก และส่งผลจากการคำนวณตัวดำเนินการออกไป หน่วยประมวลผลของคอมพิวเตอร์มีหน้าที่ดำเนินการกับคำสั่งต่าง ๆ ที่คอยสั่งให้อ่าน ประมวล และเก็บข้อมูลไว้ คำสั่งต่าง ๆ ที่มีเงื่อนไขจะแปลงชุดคำสั่งให้ระบบและสิ่งแวดล้อมรอบ ๆ เป็นฟังก์ชันที่สถานะปัจจุบัน คอมพิวเตอร์อิเล็กทรอนิกส์เครื่องแรกถูกพัฒนาขึ้นในช่วงกลางคริสต์ศตวรรษที่ 20 (ค.ศ. 1940 – ค.ศ. 1945) แรกเริ่มนั้น คอมพิวเตอร์มีขนาดเท่ากับห้องขนาดใหญ่ ซึ่งใช้พลังงานมากเท่ากับเครื่องคอมพิวเตอร์ส่วนบุคคล (พีซี) สมัยใหม่หลายร้อยเครื่องรวมกัน คอมพิวเตอร์ในสมัยใหม่นี้ผลิตขึ้นโดยใช้วงจรรวม หรือวงจรไอซี (Integrated circuit) โดยมีความจุมากกว่าสมัยก่อนล้านถึงพันล้านเท่า และขนาดของตัวเครื่องใช้พื้นที่เพียงเศษส่วนเล็กน้อยเท่านั้น คอมพิวเตอร์อย่างง่ายมีขนาดเล็กพอที่จะถูกบรรจุไว้ในอุปกรณ์โทรศัพท์มือถือ และคอมพิวเตอร์มือถือนี้ใช้พลังงานจากแบตเตอรี่ขนาดเล็ก และหากจะมีคนพูดถึงคำว่า "คอมพิวเตอร์" มักจะหมายถึงคอมพิวเตอร์ส่วนบุคคลซึ่งถือเป็นสัญลักษณ์ของยุคสารสนเทศ อย่างไรก็ดี ยังมีคอมพิวเตอร์ชนิดฝังอีกมากมายที่พบได้ตั้งแต่ในเครื่องเล่นเอ็มพีสามจนถึงเครื่องบินบังคับ และของเล่นชนิดต่าง ๆ จนถึงหุ่นยนต์อุตสาหกรรม.

ใหม่!!: ขั้นตอนวิธีและคอมพิวเตอร์ · ดูเพิ่มเติม »

ตรรกศาสตร์

ตรรกศาสตร์ (logic - มีรากศัพท์จากภาษากรีกคือ λόγος, logos) โดยทั่วไปประกอบด้วยการศึกษารูปแบบของข้อโต้แย้งอย่างเป็นระบบ ข้อโต้แย้งที่สมเหตุสมผลคือข้อโต้แย้งที่มีความสัมพันธ์ของการสนับสนุนเชิงตรรกะที่เฉพาะเจาะจงระหว่างข้อสมมุติพื้นฐานของข้อโต้แย้งและข้อสรุป ตรรกศาสตร์เป็นการศึกษาเชิงปรัชญาว่าด้วยการให้เหตุผล โดยมักจะเป็นส่วนสำคัญของวิชาปรัชญา คณิตศาสตร์ คอมพิวเตอร์ รวมถึงภาษาศาสตร์ ตรรกศาสตร์เป็นการตรวจสอบข้อโต้แย้งที่สมเหตุสมผล (valid argument) หรือการให้เหตุผลแบบผิดๆ (fallacies) ตรรกศาสตร์ เป็นการศึกษาที่มีมานานโดยมนุษยชาติที่เจริญแล้ว เช่น กรีก จีน หรืออินเดีย และถูกยกขึ้นเป็นสาขาวิชาหนึ่งโดย อริสโตเติล.

ใหม่!!: ขั้นตอนวิธีและตรรกศาสตร์ · ดูเพิ่มเติม »

ประเทศอิหร่าน

อิหร่าน (ایران, อีรอน) หรือ เปอร์เซีย มีชื่ออย่างเป็นทางการว่า สาธารณรัฐอิสลามอิหร่าน (جمهوری اسلامی ايران) เป็นประเทศในเอเชียตะวันตก มีเขตแดนติดกับประเทศอาร์มีเนีย สาธารณรัฐนากอร์โน-คาราบัคโดยพฤตินัย และอาเซอร์ไบจานทางทิศตะวันตกเฉียงเหนือ ติดประเทศคาซัคสถานและรัสเซียโดยมีทะเลแคสเปียนคั่น ติดประเทศเติร์กเมนิสถานทางทิศตะวันออกเฉียงเหนือ ติดประเทศอัฟกานิสถานและปากีสถานทางทิศตะวันออก ติดอ่าวเปอร์เซียและอ่าวโอมานทางทิศใต้ และติดประเทศตุรกีและอิรักทางทิศตะวันตก มีพื้นที่ดินแดน 1,648,195 ตารางกิโลเมตร เป็นประเทศใหญ่ที่สุดอันดับที่สองในตะวันออกกลางและอันดับที่ 18 ในโลก มีประชากร 78.4 ล้านคน มากที่สุดเป็นอันดับที่ 17 ของโลก เป็นประเทศเดียวที่มีชายฝั่งทะเลแคสเปียนและมหาสมุทรอินเดีย ประเทศอิหร่านมีความสำคัญทางภูมิรัฐศาสตร์มาช้านานเนื่องจากที่ตั้งอยู่ในกลางยูเรเชียและเอเชียตะวันตก และอยู่ใกล้กับช่องแคบฮอร์มุซ อิหร่านเป็นประเทศที่มีวัฒนธรรมหลากหลายที่มีกลุ่มชาติพันธุ์และภาษาต่างๆมากมาย เปอร์เซียที่ใหญ่ที่สุด (61%) อาเซอร์ไบจาน (16%), Kurds (10%) และ Lorestan (6%) ประเทศอิหร่านเป็นที่ตั้งของอารยธรรมเก่าแก่ที่สุดแห่งหนึ่งของโลก เริ่มต้นด้วยการตั้งราชอาณาจักรก่อนเอลามและเอลามใน 3200–2800 ปีก่อน..

ใหม่!!: ขั้นตอนวิธีและประเทศอิหร่าน · ดูเพิ่มเติม »

นักเขียนโปรแกรม

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

ใหม่!!: ขั้นตอนวิธีและนักเขียนโปรแกรม · ดูเพิ่มเติม »

แอลัน ทัวริง

แอลัน แมธิสัน ทัวริง (Alan Mathison Turing; 23 มิถุนายน พ.ศ. 2455 (ค.ศ. 1912) – 7 มิถุนายน พ.ศ. 2497 (ค.ศ. 1954)) เป็นนักคณิตศาสตร์, นักตรรกศาสตร์, นักรหัสวิทยาและวีรบุรุษสงครามชาวอังกฤษ และเป็นที่ยอมรับว่าเป็นบิดาของวิทยาการคอมพิวเตอร์ เขาได้สร้างรูปแบบที่เป็นทางการทางคณิตศาสตร์ของการระบุขั้นตอนวิธีและการคำนวณ โดยใช้เครื่องจักรทัวริง ซึ่งตามข้อปัญหาเชิร์ช-ทัวริงได้กล่าวว่าเป็นรูปแบบของเครื่องจักรคำนวณเชิงกลที่ครอบคลุมทุก ๆ รูปแบบที่เป็นไปได้ในทางปฏิบัติ ในระหว่างสงครามโลกครั้งที่สอง ทัวริงมีส่วนสำคัญในการแกะรหัสลับของฝ่ายเยอรมัน โดยเขาเป็นหัวหน้าของกลุ่ม Hut 8 ที่ทำหน้าที่ในการแกะรหัสของเครื่องอินิกมาที่ใช้ในฝ่ายทหารเรือ หลังจากสงครามเขาได้ออกแบบเครื่องคอมพิวเตอร์อิเล็กทรอนิกส์ที่สามารถโปรแกรมได้เครื่องแรกๆ ของโลกที่ห้องปฏิบัติการฟิสิกส์แห่งชาติ และได้สร้างเครื่องคอมพิวเตอร์ขึ้นจริง ๆ ที่มหาวิทยาลัยแมนเชสเตอร์ รางวัลทัวริงถูกก่อตั้งขึ้นเพื่อยกย่องเขาในเรื่องนี้ นอกจากนั้นแล้ว การทดสอบของทัวริงที่เขาได้เสนอนั้นมีผลอย่างสูงต่อการศึกษาเรื่องปัญญาประดิษฐ์ ซึ่งในขณะมีถกเถียงที่สำคัญว่า เป็นไปได้หรือไม่ที่จะกล่าวว่าเครื่องจักรนั้นมีสำนึกและสามารถคิดได้.

ใหม่!!: ขั้นตอนวิธีและแอลัน ทัวริง · ดูเพิ่มเติม »

โครงสร้างข้อมูล

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

ใหม่!!: ขั้นตอนวิธีและโครงสร้างข้อมูล · ดูเพิ่มเติม »

โปรแกรมคอมพิวเตอร์

รหัสต้นฉบับ "Hello, World" ในภาษาซี สนิปเพตที่รู้จักกันครั้งแรกในหนังสือ ''เดอะซีโปรแกรมมิงแลงกวิจ'' เขียนโดยไบรอัน เคอร์เนแฮน และเดนนิส ริตชี ในปี ค.ศ. 1974 โปรแกรมคอมพิวเตอร์ (computer program) เป็นชุดคำสั่ง ที่ปฏิบัติงานเฉพาะเมื่อคอมพิวเตอร์สั่งกระทำการ (execute) คอมพิวเตอร์เครื่องหนึ่งต้องการใช้โปรแกรมในการสั่งงาน และกระทำตามชุดคำสั่งในหน่วยประมวลผลกลาง โปรแกรมคอมพิวเตอร์มักเขียนโดยนักเขียนโปรแกรมโดยใช้ภาษาโปรแกรม คอมไพเลอร์สามารถแปลงรหัสเครื่อง (machine code) ที่ประกอบด้วยชุดคำสั่งที่คอมพิวเตอร์สามารถกระทำการได้โดยตรงได้จากรหัสต้นฉบับ (source code) แบบมนุษย์อ่านได้ หรืออีกทางหนึ่ง โปรแกรมคอมพิวเตอร์สามารถกระทำการได้ด้วยอินเทอร์พรีเตอร์ วนหนึ่งของโปรแกรมคอมพิวเตอร์ที่กระทำงานงานหนึ่งที่นิยามไว้อย่างดี เรียกว่าขั้นตอนวิธี (algorithm) ชุดของโปรแกรมคอมพิวเตอร์ คลัง (library) และข้อมูลที่เกี่ยวข้องเรียกว่าซอฟต์แวร์ โปรแกรมคอมพิวเตอร์อาจจัดประเภทได้จากฟังก์ชันยาวหลายบรรทัด เช่น โปรแกรมประยุกต์ หรือซอฟต์แวร์ร.

ใหม่!!: ขั้นตอนวิธีและโปรแกรมคอมพิวเตอร์ · ดูเพิ่มเติม »

เอดา เลิฟเลซ

อดา ไบรอน เลิฟเลซ (Lady Augusta Ada Byron, Countess of Lovelace) โปรแกรมเมอร์คนแรกของโลกJ.

ใหม่!!: ขั้นตอนวิธีและเอดา เลิฟเลซ · ดูเพิ่มเติม »

เครือข่ายไฟฟ้า

วงจรไฟฟ้าอย่างง่ายประกอบไปด้วยแหล่งจ่ายไฟและตัวต้านทาน ในวงจรนี้จะเห็นว่า V.

ใหม่!!: ขั้นตอนวิธีและเครือข่ายไฟฟ้า · ดูเพิ่มเติม »

เครื่องทัวริง

รื่องจักรทัวริง (Turing machine) คือเครื่องจักรนามธรรมที่แอลัน ทัวริงได้คิดค้นขึ้นใน..

ใหม่!!: ขั้นตอนวิธีและเครื่องทัวริง · ดูเพิ่มเติม »

เปลี่ยนเส้นทางที่นี่:

Algorithmอัลกอริธึมอัลกอริทึมอัลกอรึทึม

ขาออกขาเข้า
Hey! เราอยู่ใน Facebook ตอนนี้! »