برنامه نويسي

ساختار داده ها و الگوریتم های شبکه

Data structures and network algorithms

دانلود کتاب Data structures and network algorithms (به فارسی: ساختار داده ها و الگوریتم های شبکه) نوشته شده توسط «Robert Endre Tarjan»


اطلاعات کتاب ساختار داده ها و الگوریتم های شبکه

موضوع اصلی: کامپیوتر – برنامه نویسی

نوع: کتاب الکترونیکی

ناشر: Society for Industrial and Applied Mathematics

نویسنده: Robert Endre Tarjan

زبان: english

فرمت کتاب: PDF (قابل تبدیل به سایر فرمت ها)

سال انتشار: 1987

تعداد صفحه: 142

حجم فایل: 12.82 مگابایت

کد کتاب: 0898711878 , 9780898711875

توضیحات کتاب ساختار داده ها و الگوریتم های شبکه

این یک کتاب فوق العاده است من در سال 1984 یا 1985 یک دوره تحصیلات تکمیلی بر اساس آن را در دانشگاه لیهای تدریس کردم. جایزه معتبر سالانه لانچستر برای کتاب سال انجمن تحقیقات عملیات آمریکا در آن زمان به آن تعلق گرفت. رابرت تارجان به دلیل مشارکت در نظریه الگوریتم‌ها، جایزه تورینگ ACM را دریافت کرد که نزدیک‌ترین معادل در علوم کامپیوتر به جایزه نوبل است. این کتاب مقدمه ای عالی برای کار اوست. الگوریتم‌های این کتاب در زمان انتشار بسیار پیشرفته بودند، اما نمی‌دانم چقدر به بهترین‌های امروزی نزدیک هستند.

بیشتر الگوریتم‌های بهینه در کتاب حاصل کار پیشگام ترجان روی الگوریتم‌هایی است که به حداقل می‌رساند. پیچیدگی کلی با اجازه دادن به تکه های تکی کار برای مصرف مقادیر زیادی از منابع محاسباتی در صورت ایجاد “اعتبار” که مراحل بعدی را کارآمدتر می کند. تا زمانی که تارجان از این رویکرد برای توسعه الگوریتم‌های برتر برای تعدادی از مسائل کلاسیک استفاده می‌کرد، وضعیت هنر محدود کردن منابع مصرف‌شده توسط هر مرحله و محدود کردن پیچیدگی کل با ضرب تعداد مراحل در بدترین حالت مصرف منابع در هر مرحله بود.

تعریف تارجان قدرت انتزاع را نشان می دهد. او از انواع داده‌های انتزاعی استفاده می‌کند و با دقت آنها را بر حسب عملیات اساسی‌شان تعریف می‌کند. این رویکرد برای هر کسی که با برنامه نویسی شی گرا آشنا است بسیار طبیعی خواهد بود.

مقدار عظیمی از اطلاعات در صفحات بسیار کمی وجود دارد، اما بسیار خوب سازماندهی شده است. اغلب کلمات ترجان که با دقت انتخاب شده اند، بسیار بیشتر از آن چیزی است که برای خوانندگان معمولی آشکار است. من یک دوره 75 دقیقه ای را صرف توضیح 12 خط اثبات یکی از الگوریتم هایش کردم. سپس کلاس از من خواست که نشان دهم الگوریتم واقعاً چگونه روی یک مسئله واقعی کار می کند، بنابراین ما 1.5 کلاس دیگر را صرف اعمال الگوریتم برای یک مسئله کوچک کردیم تا بتوانم تمام شرایط مرزی آن را اعمال کنم.

اساتید دیگر توصیه کردند. به نظر من این کتاب برای درسی که برای مقاطع کارشناسی ارشد و دانشجویان مقطع کارشناسی ارشد در نظر گرفته شده بود بسیار سخت بود، اما دانشجویان مخالف بودند. بیش از یک نفر اظهار نظر کردند که مطالب پس از خواندن اول سخت بود، اما پس از شنیدن سخنرانی‌های من و بازخوانی تکالیف آنها، متوجه شدند که واقعاً بسیار آسان است و کتاب آن را به خوبی ارائه کرده است. بسیاری از نمونه‌های کار شده برای مشاهده رفتار دینامیکی الگوریتم‌ها قدردانی می‌کردند. یکی از دانشجویان برخی از الگوریتم ها را متحرک ساخت و پایان نامه کارشناسی ارشد خود را در مورد انیمیشن الگوریتم نوشت.


This is a superb book. I taught a graduate level course based on it at Lehigh University in 1984 or 1985. It was awarded the prestigious annual Lanchester prize for book of the year Operations Research Society of America about that time. Robert Tarjan was awarded the ACM’s Turing award, computer sciences closest equivalent to the Nobel Prize for his contibutions to the theory of algorithms. This book is an excellent introduction to his work. The algorithms in this book were state of the art when it was published, but I don’t know how close they are to today’s best.

Most of the optimal algorithms in the book grew out of Tarjan’s pioneering work on algorithms that minimizes total complexity by allowing individual chunks of work to consume large amounts of computing resources if they build up “credits” that make subsequent steps more efficient. Until Tarjan used this approach to develop superior algorithms for a number of classical problems, the state of the art had been to limit the resources consumed by each step and bound total complexity by multipying the number of steps by the worst case resource consumption per step.

Tarjan’s exposition illustrates the power of abstraction. He uses abstract data types throughout, carefully defining them in terms of their fundamental operations. This approach will be very natural for anyone familiar with object oriented programming.

There is a huge amount of information in very few pages, but it is organized very well. Often Tarjan’s carefully chosen words say a lot more than is apparent to casual reader’s. I spent one 75 minute period explaining his 12 line proof of one of his algorithms. Then the class demanded that I illustrate how the algorithm actually worked on a real problem, so we spent another 1.5 classes applying the algorithm to a small problem I contrived to exercise all of its boundary conditions.

Other faculty advised me that this book was much too hard for course intended for advanced undergraduate and beginning graduate students, but the students disagreed. More than one commented that the material was hard after first reading, but that after hearing my lectures and rereading their assignments, they realized that it was really pretty easy and that the book presented it well. Most would have appreciated worked out examples to observe the dynamic behavior of the algorithms. One student animated some of the algorithms and went on to write his masters thesis on algorithm animation.

دانلود کتاب «ساختار داده ها و الگوریتم های شبکه»

مبلغی که بابت خرید کتاب می‌پردازیم به مراتب پایین‌تر از هزینه‌هایی است که در آینده بابت نخواندن آن خواهیم پرداخت.

دیدگاهتان را بنویسید