دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
دسته بندی: الگوریتم ها و ساختارهای داده ویرایش: نویسندگان: Dr. Basant Agarwal, Benjamin Baka سری: ISBN (شابک) : 1788995570, 9781788995573 ناشر: Packt Publishing سال نشر: 2018 تعداد صفحات: 0 زبان: English فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 9 مگابایت
در صورت ایرانی بودن نویسنده امکان دانلود وجود ندارد و مبلغ عودت داده خواهد شد
در صورت تبدیل فایل کتاب Hands-On Data Structures and Algorithms with Python: Write complex and powerful code using the latest features of Python 3.7, 2nd Edition به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب ساختارها و الگوریتمهای داده عملی با پایتون: با استفاده از آخرین ویژگیهای Python 3.7، نسخه دوم، کدهای پیچیده و قدرتمند بنویسید. نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
آموزش پیاده سازی ساختارهای داده و الگوریتم های پیچیده با استفاده از ویژگی های کلیدی پایتون درک تجزیه و تحلیل و طراحی ساختارهای داده اساسی پایتون کاوش در مفاهیم پیشرفته پایتون مانند نشانه گذاری Big O و برنامه نویسی پویا آموزش پیاده سازی های عملکردی و واکنشی ساختارهای داده سنتی توضیحات کتاب ساختارهای داده به شما امکان می دهد ذخیره و سازماندهی موثر داده ها آنها برای هر مشکلی حیاتی هستند، راه حل کاملی ارائه می دهند و مانند کدهای قابل استفاده مجدد عمل می کنند. ساختارهای داده و الگوریتمهای کاربردی با پایتون به شما ساختارهای داده ضروری پایتون و رایجترین الگوریتمها برای ساخت برنامههای کاربردی آسان و قابل نگهداری را میآموزد. این کتاب به شما کمک میکند تا قدرت فهرستهای پیوندی، فهرستهای پیوندی دوگانه و فهرستهای پیوندی دایرهای را درک کنید. شما یاد خواهید گرفت که ساختارهای داده پیچیده ای مانند نمودارها، پشته ها و صف ها ایجاد کنید. همانطور که راه خود را در میان فصول طی می کنید، کاربرد جستجوهای باینری و درختان جستجوی دودویی را همراه با یادگیری تکنیک ها و ساختارهای رایج مورد استفاده در کارهایی مانند پیش پردازش، مدل سازی و تبدیل داده ها کشف خواهید کرد. در فصل های پایانی، با سازماندهی کد خود به شیوه ای قابل مدیریت، سازگار و قابل گسترش آشنا خواهید شد. همچنین نحوه مرتبسازی حبابی، مرتبسازی انتخابی، مرتبسازی درج و ادغام الگوریتمهای مرتبسازی را با جزئیات مطالعه خواهید کرد. در پایان کتاب، شما یاد خواهید گرفت که چگونه اجزایی بسازید که به راحتی قابل درک، اشکال زدایی و استفاده در برنامه های مختلف باشد. شما در مورد پیاده سازی پایتون از همه الگوریتم های مهم و مرتبط بینش خواهید داشت. آنچه یاد خواهید گرفت درک بازنمایی اشیا، اتصال ویژگی ها و کپسوله سازی داده ها درک کاملی از ساختارهای داده پایتون با استفاده از الگوریتم ها به دست آورید الگوریتم های مطالعه با استفاده از مثال هایی با نمایش تصویری الگوریتم های پیچیده را از طریق توضیح آسان، پیاده سازی برنامه های کاربردی داده پیچیده و کارآمد Python Build در Python Understand مشترک یاد بگیرید. الگوریتم های برنامه نویسی مورد استفاده در علم داده پایتون کد کارآمد و قوی در پایتون بنویسید 3.7 این کتاب برای چه کسانی است این کتاب برای توسعه دهندگانی است که می خواهند ساختارهای داده و الگوریتم ها را در پایتون یاد بگیرند تا برنامه های پیچیده و انعطاف پذیر بنویسند. دانش اولیه برنامه نویسی پایتون مورد انتظار است.
Learn to implement complex data structures and algorithms using Python Key Features Understand the analysis and design of fundamental Python data structures Explore advanced Python concepts such as Big O notation and dynamic programming Learn functional and reactive implementations of traditional data structures Book Description Data structures allow you to store and organize data efficiently. They are critical to any problem, provide a complete solution, and act like reusable code. Hands-On Data Structures and Algorithms with Python teaches you the essential Python data structures and the most common algorithms for building easy and maintainable applications. This book helps you to understand the power of linked lists, double linked lists, and circular linked lists. You will learn to create complex data structures, such as graphs, stacks, and queues. As you make your way through the chapters, you will explore the application of binary searches and binary search trees, along with learning common techniques and structures used in tasks such as preprocessing, modeling, and transforming data. In the concluding chapters, you will get to grips with organizing your code in a manageable, consistent, and extendable way. You will also study how to bubble sort, selection sort, insertion sort, and merge sort algorithms in detail. By the end of the book, you will have learned how to build components that are easy to understand, debug, and use in different applications. You will get insights into Python implementation of all the important and relevant algorithms. What you will learn Understand object representation, attribute binding, and data encapsulation Gain a solid understanding of Python data structures using algorithms Study algorithms using examples with pictorial representation Learn complex algorithms through easy explanation, implementing Python Build sophisticated and efficient data applications in Python Understand common programming algorithms used in Python data science Write efficient and robust code in Python 3.7 Who this book is for This book is for developers who want to learn data structures and algorithms in Python to write complex and flexible programs. Basic Python programming knowledge is expected.
Cover Title Page Copyright and Credits Dedication Packt Upsell Contributors Acknowledgments Table of Contents Preface Chapter 1: Python Objects, Types, and Expressions Technical requirements Installing Python Understanding data structures and algorithms Python for data The Python environment Variables and expressions Variable scope Flow control and iteration Overview of data types and objects Strings Lists Functions as first class objects Higher order functions Recursive functions Generators and co-routines Classes and object programming Special methods Inheritance Data encapsulation and properties Summary Further reading Chapter 2: Python Data Types and Structures Technical requirements Built-in data types None type Numeric types Representation error Membership, identity, and logical operations Sequences Learning about tuples Beginning with dictionaries Python Sorting dictionaries Dictionaries for text analysis Sets Immutable sets Modules for data structures and algorithms Collections Deques ChainMap objects Counter objects Ordered dictionaries defaultdict Learning about named tuples Arrays Summary Chapter 3: Principles of Algorithm Design Technical requirements An introduction to algorithms Algorithm design paradigms Recursion and backtracking Backtracking Divide and conquer – long multiplication The recursive approach Runtime analysis Asymptotic analysis Big O notation Composing complexity classes Omega notation (Ω) Theta notation (ϴ ) Amortized analysis Summary Chapter 4: Lists and Pointer Structures Technical requirements Beginning with an example Arrays Pointer structures Nodes Finding endpoints Node class Other node types Introducing lists Singly linked lists Singly linked list class The append operation A faster append operation Getting the size of the list Improving list traversal Deleting nodes List search Clearing a list Doubly linked lists A doubly linked list node Doubly linked list class Append operation The delete operation List search Circular lists Appending elements Deleting an element in a circular list Iterating through a circular list Summary Chapter 5: Stacks and Queues Technical requirements Stacks Stack implementation Push operation Pop operation Peek operation Bracket-matching application Queues List-based queues The enqueue operation The dequeue operation Stack-based queues Enqueue operation Dequeue operation Node-based queues Queue class The enqueue operation The dequeue operation Application of queues Media player queues Summary Chapter 6: Trees Technical requirements Terminology Tree nodes Tree traversal Depth-first traversal In-order traversal and infix notation Pre-order traversal and prefix notation Post-order traversal and postfix notation Breadth-first traversal Binary trees Binary search trees Binary search tree implementation Binary search tree operations Finding the minimum and maximum nodes Inserting nodes Deleting nodes Searching the tree Benefits of a binary search tree Balancing trees Expression trees Parsing a reverse Polish expression Heaps Ternary search tree Summary Chapter 7: Hashing and Symbol Tables Technical requirements Hashing Perfect hashing functions Hash tables Storing elements in a hash table Retrieving elements from the hash table Testing the hash table Using [] with the hash table Non-string keys Growing a hash table Open addressing Chaining Symbol tables Summary Chapter 8: Graphs and Other Algorithms Technical requirements Graphs Directed and undirected graphs Weighted graphs Graph representations Adjacency lists Adjacency matrices Graph traversals Breadth-first traversal Depth-first search Other useful graph methods Priority queues and heaps Insert operation Pop operation Testing the heap Selection algorithms Summary Chapter 9: Searching Technical requirements Introduction to searching Linear search Unordered linear search Ordered linear search Binary search Interpolation search Choosing a search algorithm Summary Chapter 10: Sorting Technical requirements Sorting algorithms Bubble sort algorithms Insertion sort algorithms Selection sort algorithms Quick sort algorithms List partitioning Pivot selection An illustration with an example Implementation Heap sort algorithms Summary Chapter 11: Selection Algorithms Technical requirements Selection by sorting Randomized selection Quick select Understanding the partition step Deterministic selection Pivot selection Median of medians Partitioning step Summary Chapter 12: String Algorithms and Techniques Technical requirements String notations and concepts Pattern matching algorithms The brute-force algorithm The Rabin-Karp algorithm Implementing the Rabin-Karp algorithm The Knuth-Morris-Pratt algorithm The prefix function Understanding KMP algorithms Implementing the KMP algorithm The Boyer-Moore algorithm Understanding the Boyer-Moore algorithm Bad character heuristic Good suffix heuristic Implementing the Boyer-Moore algorithm Summary Chapter 13: Design Techniques and Strategies Technical requirements Classification of algorithms Classification by implementation Recursion Logic Serial or parallel algorithms Deterministic versus nondeterministic algorithms Classification by complexity Complexity curves Classification by design Divide and conquer Dynamic programming Greedy algorithms Technical implementation Implementation using dynamic programming Memoization Tabulation The Fibonacci series The memoization technique The tabulation technique Implementation using divide and conquer Divide Conquer Merge Merge sort Implementation using greedy algorithms Coin-counting problem Shortest path algorithm Complexity classes P versus NP NP-Hard NP-Complete Summary Chapter 14: Implementations, Applications, and Tools Technical requirements Knowledge discovery in data Data preprocessing Processing raw data Missing data Feature scaling Min-max scalar form of normalization Standard scalar Binarizing data Learning about machine learning Types of machine learning The hello classifier A supervised learning example Gathering data Bag of words Prediction An unsupervised learning example K-means algorithm Prediction Data visualization Bar chart Multiple bar charts Box plot Pie chart Bubble chart Summary Other Books You May Enjoy Index