کتاب ساختارهای داده و الگوریتم‌ها در جاوااسکریپت – ویرایش اول اثر  Federico Kereki

عنوان:

Data Structures and Algorithms in JavaScript

نویسنده:

Federico Kereki

انتشارات:

No Starch Press City: San Francisco, CA

تاریخ انتشار:

2025

حجم:

5.40MB

دانلود

معرفی کتاب:" ساختارهای داده و الگوریتم‌ها در جاوااسکریپت – ویرایش اول"

جاوااسکریپت معمولی نه!

فکر می‌کنی جاوااسکریپت را بلدی؟ دوباره فکر کن. این کتاب، یک کتاب کدنویسی معمولی نیست—بلکه سفری عمیق به دنیای قدرتمند ساختارهای داده و الگوریتم‌هاست که طرز تفکر تو را در حل مسئله با جاوااسکریپت متحول می‌کند.

فرقی ندارد که یک توسعه‌دهنده فرانت‌اند باشی یا بک‌اند یا در حال آمادگی برای مصاحبه‌های فنی، این کتاب نحوه‌ی کدنویسی تو را به شکلی انقلابی تغییر خواهد داد.

ویژگی‌های کلیدی

  • تکنیک‌های مدرن جاوااسکریپت: استفاده از ویژگی‌های جدید زبان و برنامه‌نویسی تابعی برای نوشتن کدی تمیزتر و کارآمدتر
  • رویکرد مبتنی بر عملکرد: تحلیل Big O برای بهینه‌سازی الگوریتم‌ها
  • الگوریتم‌های ضروری: quicksort، merge sort، جستجوی دودویی و موارد دیگر، با پیاده‌سازی‌های واضح
  • استراتژی‌های طراحی الگوریتم: استفاده از recursion، backtracking، dynamic programming و brute-force
  • ساختارهای داده پیشرفته: کار با BST، هیپ‌ها و گراف‌ها

ساختار کتاب

هر فصل با توضیحی روان و دقیق آغاز می‌شود، نمونه‌کدهای کاربردی و تمرین‌های چالشی دارد، و در انتهای هر فصل پاسخ‌نامه برای مرور و ارزیابی ارائه شده است.

مخاطب این کتاب کیست؟

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

اگر به‌دنبال ورود به شرکت‌های برتر فناوری یا شرکت در رقابت‌های برنامه‌نویسی هستی، این کتاب ابزارهایی را در اختیارت می‌گذارد که از دیگران متمایزت می‌کند.

آماده‌ای از جاوااسکریپت معمولی فراتر بری؟

وقتشه کدنویسی با JS رو به سطح بعدی ببری. این کتاب همه چیزیه که برای رسیدن به اون نیاز داری.

فهرست مطالب

  • Cover
  • Praise for Data Structures and Algorithms in Javascript
  • Title Page
  • Copyright
  • Dedication
  • About the Author
  • About the Technical Reviewer
  • Brief Contents
  • Contents in Detail
  • Preface
  • Acknowledgments
  • Introduction
  • Part I: The Basics
  • 1. Using JavaScript
  • Modern JavaScript Features
  • JavaScript Development Tools
  • Summary
  • 2. Functional Programming in JavaScript
  • Why Use Functional Programming?
  • JavaScript as a Functional Language
  • Summary
  • Questions
  • 3. Abstract Data Types
  • The Theory
  • Implementing an ADT
  • Summary
  • Questions
  • 4. Analyzing Algorithms
  • Performance
  • Complexity
  • Summary
  • Questions
  • Part II: Algorithms
  • 5. Designing Algorithms
  • Recursion
  • Dynamic Programming
  • Brute-Force Search
  • Greedy Algorithms
  • Summary
  • Questions
  • 6. Sorting
  • The Sorting Problem
  • Sorting with Comparisons
  • Sorting Without Comparisons
  • Inefficient Sorting Algorithms
  • Summary
  • Questions
  • 7. Selecting
  • Selection Without Comparisons
  • Selecting with Comparisons
  • The Quickselect Family
  • Finding the Median with Lazy Select
  • Summary
  • Questions
  • 8. Shuffling and Sampling
  • Choosing Numbers Randomly
  • Shuffling
  • Sampling
  • Summary
  • Questions
  • 9. Searching
  • Search Definition
  • Searching Unsorted Arrays
  • Searching Ordered Arrays
  • Summary
  • Questions
  • Part III: Data Structures
  • 10. Lists
  • Basic Lists
  • Varieties of Lists
  • Summary
  • Questions
  • 11. Bags, Sets, and Maps
  • Introducing Bags, Sets, and Maps
  • JavaScript’s Solutions for Sets
  • Bitmaps
  • Using Lists
  • Hashing
  • Summary
  • Questions
  • 12. Binary Trees
  • What Are Trees?
  • Assured Balanced Binary Search Trees
  • Probabilistic Balance Binary Search Trees
  • Summary
  • Questions
  • 13. Trees and Forests
  • 14. Heaps
  • Binary Heaps
  • Priority Queues and Heaps
  • Heapsort
  • Treaps
  • Ternary and D-ary Heaps
  • Summary
  • Questions
  • 15. Extended Heaps
  • Meldable and Addressable Priority Queues
  • Skew Heaps
  • Binomial Heaps
  • Lazy Binomial Heaps
  • Fibonacci Heaps
  • Pairing Heaps
  • Summary
  • Questions
  • 16. Digital Search Trees
  • The Classic Version of Tries
  • Storing Extra Data in a Trie
  • An Enhanced Version of Tries
  • Radix Trees
  • Ternary Search Tries
  • Summary
  • Questions
  • 17. Graphs
  • What Are Graphs?
  • Representing Graphs
  • Finding the Shortest Paths
  • Sorting a Graph
  • Detecting Cycles
  • Detecting Connectivity
  • Finding a Minimum Spanning Tree
  • Summary
  • Questions
  • 18. Immutability and Functional Data Structures
  • Functional Data Structures
  • Summary
  • Questions
  • Answer Key
  • Bibliography
  • Index
  • Back Cover

مشخصات

نام کتاب

Data Structures and Algorithms in JavaScript

نویسنده

Federico Kereki

انتشارات

No Starch Press City: San Francisco, CA

تاریخ انتشار

2025

ISBN

9781718502628

تعداد صفحات

595

زبان

انگلیسی

فرمت

pdf

حجم

5.40MB

موضوع

Algorithms; Data Structures; JavaScript