ทักษะคณิตศาสตร์เบื้องต้นสำหรับหนังสือ Introduction to Algorithms (CLRS) หนังสือ [ปิด]


30

ฉันมีความรู้เกี่ยวกับอัลกอริทึมพื้นฐานแล้ว ตอนนี้ผมวางแผนที่จะศึกษาขั้นตอนวิธีการล่วงหน้ามากขึ้นและฉันตัดสินใจไปกับรู้เบื้องต้นเกี่ยวกับอัลกอริทึม

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

ฉันต้องการเรียนรู้เกี่ยวกับการใช้งานการออกแบบและการวิเคราะห์อัลกอริทึม


1
นี่เป็นแหล่งข้อมูลที่ยอดเยี่ยมในการฟื้นฟูทักษะของคุณหากคุณต้องการ khanacademy.org
อลันบีดี

คำตอบ:


23

หลักสูตร MIT ที่ใช้หนังสือ CLR นั้นมีข้อกำหนดเบื้องต้นที่เฉพาะเจาะจง ตำราเรียนที่ใช้โดยหลักสูตรที่ต้องมีก่อนนั้นมีให้ฟรี

นี่มันคือ:

http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/readings/

วิชาบังคับก่อนของหลักสูตรวิชาบังคับก่อนเป็นแคลคูลัสตัวแปรเดียว


9

ในฐานะที่เป็น @ user16764 alludes อ้างอิงถึงการเสนอหลักสูตร MIT โดยเฉพาะ (6.042) , รุ่นของสิ่งที่เรียกว่าคณิตศาสตร์ไม่ต่อเนื่องรวมกับแคลคูลัสระดับปีแรก (มหาวิทยาลัย) เป็นข้อกำหนดหลักในการทำความเข้าใจอัลกอริทึม (พื้นฐาน) จำนวนมากและ การวิเคราะห์

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

ในฐานะนักเรียนหลักสูตรคณิตศาสตร์ไม่ต่อเนื่องของฉันมีหนังสือคณิตศาสตร์ไม่ต่อเนื่องกับการใช้งานโดย Susanna Epp และหนังสือเรียนอีกเล่มที่ฉันพบในห้องสมุดของฉันคือคณิตศาสตร์ไม่ต่อเนื่องโดย Kenneth Ross และ Charles Wright คุณภาพที่ใช้ในการคัดลอกสิ่งเหล่านี้น่าจะเป็นจุดเริ่มต้นที่เหมาะสม (ไม่ว่าจะมีหรือไม่มีการรวมเข้ากับ MIT Open Course Ware ขึ้นอยู่กับสไตล์การเรียนรู้ของคุณ) สำหรับการศึกษาด้วยตนเองฉันมักจะพบว่ามีแหล่งอ้างอิงสองแห่งสามารถช่วยชี้แจงจุดที่ฉันมีปัญหาในการทำความเข้าใจ

อีกทางเลือกหนึ่งที่ฉันเคยเห็นคือคณิตศาสตร์คอนกรีตฉบับที่สองโดย Ronald L. Graham, Donald E. Knuth และ Oren Patashnik ฉันไม่พบสำเนาของฉันในขณะนี้และไม่ได้ทำงานอย่างขยันขันแข็งดังนั้นฉันจึงไม่สามารถแนะนำหรือคัดค้านได้

จากคำนำ:

แต่คณิตศาสตร์คอนกรีตคืออะไร? มันคือการผสมผสานของคณิตศาสตร์อย่างต่อเนื่องและไม่ต่อเนื่อง ยิ่งเป็นรูปธรรมมันคือการควบคุมการจัดการของสูตรทางคณิตศาสตร์โดยใช้ชุดของเทคนิคในการแก้ปัญหา

ฉันจะบันทึกความคิดเห็น curmudgeon ของBill the Lizardในรายการบล็อกนี้ " Books Programmers Don't Really Read " โดยส่วนตัวฉันยังคงพบอัลกอริทึมของ Robert Sedgewick (ตอนที่ 4 แล้ว) น่ากลัวน้อยกว่าและเข้าถึงได้ง่ายกว่า

ในส่วนที่เกี่ยวกับคณิตศาสตร์อย่างต่อเนื่อง (เช่นจำนวนจริง ) แคลคูลัสโดยสจ๊วตดูเหมือนจะเป็นหนังสือที่ใช้บ่อยสำหรับการบรรยายให้นักเรียนในการตรัสรู้ที่มาจากความแตกต่างและบูรณาการ


6

มันไม่ได้คณิตศาสตร์มากจริงๆต่อ se เพราะมันเป็นความสะดวกสบายและความคล่องแคล่วกับแบบแผนทางคณิตศาสตร์ เรียนรู้คำศัพท์ชุดพื้นฐานและพิธีการที่สอดคล้องกัน

การวิเคราะห์อัลกอริทึมโดยเฉพาะอย่างยิ่งในบริบทของทฤษฎีความซับซ้อนที่คุณศึกษาปัญหาการคำนวณพื้นฐาน (ถ้าคุณกำลังพยายามที่จะทำสิ่งที่ยิ่งใหญ่กว่าสัญกรณ์ "บิ๊ก - โอ") ต้องใช้เวลาลงทุนจำนวนมากในทฤษฎีกราฟ และพีชคณิตนามธรรมทั้งหมดนี้นอกเหนือไปจากความฉลาดโดยธรรมชาติ


1

ฉันเชื่อว่าคุณทำได้ดีเว้นแต่คุณจะกังวลเกี่ยวกับ "การวิเคราะห์" ของอัลกอริทึมไม่ใช่แค่การนำไปใช้ แน่นอนว่าเรามักจะเป็นหลักสูตรและคณิตศาสตร์ UD หรือ CS ในหลักสูตรวิทยาลัยส่วนใหญ่

เพียงแค่เข้าใจวิธีการใช้อัลกอริทึมในหนังสือเล่มนั้นไม่ควรมีปัญหา


ฉันต้องการเรียนรู้เกี่ยวกับการวิเคราะห์อัลกอริทึมด้วย โปรดให้คำแนะนำแก่ฉัน :)
ไม่ระบุชื่อ

@ ไม่ระบุชื่อในกรณีนี้ฉันคิดว่าไม่มีทางเลือกนอกจากกัดกระสุน ฉันเริ่มสอนคณิตศาสตร์แบบแยกส่วน แต่ในไม่ช้ามันก็ท่วมท้นและเลิกลองวิธีง่ายๆโดยการทำหนังสือ "ที่เป็นที่นิยม" ในโครงสร้างข้อมูลและอัลกอริธึมเพียงเพื่อจะพบว่าข้อตกลงที่แท้จริงหายไป ตอนนี้ฉันกำลังรวบรวมความกล้าหาญที่จะเริ่มต้นใหม่อีกครั้ง
ankush981
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.