Robert Sedgewick, Kevin Wayne

#Algorithms
#MOOC
#engineering
#Java
📚 ویرایش چهارم کتاب الگوریتمها نوشته رابرت سدجویک و کوین وین، امروزه به عنوان یکی از بهترین منابع تدریس الگوریتمها شناخته میشود و به طور گستردهای در دانشگاهها و کالجهای سرتاسر دنیا استفاده میشود. این کتاب به بررسی مهمترین الگوریتمهای کامپیوتری که هماکنون در حال استفاده هستند میپردازد و توضیح کاملی از ساختار دادهها و الگوریتمها برای مرتبسازی، جستجو، پردازش گرافها و پردازش رشتهها ارائه میدهد—شامل پنجاه الگوریتمی که هر برنامهنویس باید آنها را بشناسد.
💻 در این ویرایش، پیادهسازیهای جدید زبان جاوا به سبک برنامهنویسی مدولار و قابل دسترس نوشته شدهاند، جایی که تمامی کدها برای خواننده نمایش داده شده و آماده استفاده هستند.
🧠 الگوریتمهای موجود در این کتاب نمایانگر بدنهای از دانش است که در طول ۵۰ سال گذشته توسعه یافته و اکنون به امری ضروری تبدیل شده است، نه فقط برای برنامهنویسان حرفهای و دانشجویان علوم کامپیوتر، بلکه برای هر دانشجویی که به علوم، ریاضیات و مهندسی علاقهمند است، و حتی برای دانشجویانی که از محاسبات در علوم انسانی استفاده میکنند.
🌐 وبسایت همراه این کتاب، algs4.cs.princeton.edu
، شامل موارد زیر است:
🎓 دوره آنلاین مرتبط با این کتاب از طریق لینک "دوره آنلاین" در algs4.cs.princeton.edu
در دسترس است. این دوره بیش از 100 بخش ویدیویی را ارائه میدهد که با متن کتاب یکپارچه شدهاند، ارزیابیهای آنلاین گستردهای دارد و انجمنهای بحثوجدل وسیعی را شامل میشود که اثبات شدهاند بسیار مفید هستند. این دوره هر پاییز و بهار برگزار میشود و به طور مرتب هزاران نفر را جذب میکند.
🌍 رابرت سدجویک و کوین وین در حال توسعه یک رویکرد مدرن برای انتشار دانش هستند که به طور کامل فناوری را در بر میگیرد و به افراد در سراسر جهان این امکان را میدهد که روشهای جدیدی برای یادگیری و تدریس کشف کنند. با یکپارچهسازی کتاب درسی، محتوای آنلاین و دورههای MOOC، همه در سطح پیشرفته، آنها یک منبع منحصر به فرد ساختهاند که به طور چشمگیری وسعت و عمق تجربه آموزشی را گسترش میدهد.
👨💻 درباره نویسنده
👨🏫 رابرت سدجویک از سال 1985 استاد علوم کامپیوتر در دانشگاه پرینستون بوده است، جایی که او بنیانگذار و رئیس اولین دپارتمان علوم کامپیوتر در این دانشگاه بود. وی پوزیشنهای تحقیقاتی بازدیدی را در Xerox PARC، موسسه تحلیلهای دفاعی، و INRIA داشته است و عضو هیئت مدیره سیستمهای ادوبی است. علایق تحقیقاتی پروفسور سدجویک شامل ترکیبیات تحلیلی، طراحی و تحلیل ساختار دادهها و الگوریتمها، و تجسم برنامهها است. کتاب برجسته او با عنوان الگوریتمها، که اکنون در چهارمین ویرایش خود است، طی سی سال گذشته در نسخهها و زبانهای مختلف منتشر شده است. علاوه بر این، او به همراه کوین وین، نویسنده کتاب درسی بسیار معروف مقدمهای بر برنامهنویسی با جاوا: رویکردی میانرشتهای (Addison-Wesley، 2008) است.
👨🏫 کوین وین استاد ارشد علوم کامپیوتر در دانشگاه پرینستون است و از سال 1998 تدریس در این دانشگاه را آغاز کرده است. وی دکترای خود را در زمینه تحقیق در عملیات و مهندسی صنایع از دانشگاه کرنل دریافت کرده است. علایق تحقیقاتی او شامل طراحی، تحلیل، و پیادهسازی الگوریتمها، به ویژه برای گرافها و بهینهسازی گسسته است. او به همراه رابرت سدجویک، نویسنده کتاب درسی بسیار معروف مقدمهای بر برنامهنویسی با جاوا: رویکردی میانرشتهای (Addison-Wesley، 2008) است.
This fourth edition of Robert Sedgewick and Kevin Wayne’s Algorithms is the leading textbook on algorithms today and is widely used in colleges and universities worldwide. This book surveys the most important computer algorithms currently in use and provides a full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing--including fifty algorithms every programmer should know. In this edition, new Java implementations are written in an accessible modular programming style, where all of the code is exposed to the reader and ready to use.
The algorithms in this book represent a body of knowledge developed over the last 50 years that has become indispensable, not just for professional programmers and computer science students but for any student with interests in science, mathematics, and engineering, not to mention students who use computation in the liberal arts.
The companion web site, algs4.cs.princeton.edu, contains
The MOOC related to this book is accessible via the "Online Course" link at algs4.cs.princeton.edu. The course offers more than 100 video lecture segments that are integrated with the text, extensive online assessments, and the large-scale discussion forums that have proven so valuable. Offered each fall and spring, this course regularly attracts tens of thousands of registrants.
Robert Sedgewick and Kevin Wayne are developing a modern approach to disseminating knowledge that fully embraces technology, enabling people all around the world to discover new ways of learning and teaching. By integrating their textbook, online content, and MOOC, all at the state of the art, they have built a unique resource that greatly expands the breadth and depth of the educational experience.
Table of Contents
1. Fundamentals
1.1 Basic Programming Model
1.2 Data Abstraction
1.3 Bags, Queues, and Stacks
1.4 Analysis of Algorithms
1.5 Case Study: Union-Find
2. Sorting.
2.1 Elementary Sorts
2.2 Mergesort
2.3 Quicksort
2.4 Priority Queues
2.5 Applications
3. Searching.
3.1 Symbol Tables
3.2 Binary Search Trees
3.3 Balanced Search Trees
3.4 Hash Tables
3.5 Applications
4. Graphs
4.1 Undirected Graphs
4.2 Directed Graphs
4.3 Minimum Spanning Trees
4.4 Shortest Paths
5. Strings
5.1 String Sorts
5.2 Tries
5.3 Substring Search
5.4 Regular Expressions
5.5 Data Compression
6. Context
Robert Sedgewick has been a Professor of Computer Science at Princeton University since 1985, where he was the founding Chairman of the Department of Computer Science. He has held visiting research positions at Xerox PARC, Institute for Defense Analyses, and INRIA, and is member of the board of directors of Adobe Systems. Professor Sedgewick’s research interests include analytic combinatorics, design and analysis of data structures and algorithms, and program visualization. His landmark book, Algorithms, now in its fourth edition, has appeared in numerous versions and languages over the past thirty years. In addition, with Kevin Wayne, he is the coauthor of the highly acclaimed textbook, Introduction to Programming in Java: An Interdisciplinary Approach (Addison-Wesley, 2008).
Kevin Wayne is the Phillip Y. Goldman Senior Lecturer in Computer Science at Princeton University, where he has been teaching since 1998. He received a Ph.D. in operations research and industrial engineering from Cornell University. His research interests include the design, analysis, and implementation of algorithms, especially for graphs and discrete optimization. With Robert Sedgewick, he is the coauthor of the highly acclaimed textbook, Introduction to Programming in Java: An Interdisciplinary Approach (Addison-Wesley, 2008).









