Limit search to available items
184 results found. sorted by date .
Book Cover
E-book
Author Jamro, Marcin, author

Title C# data structures and algorithms : harness the power of C# to build a diverse range of efficient applications / Marcin Jamro
Edition 2nd edition
Published Birmingham : Packt Publishing, [2024]
©2024

Copies

Description 1 online resource
Contents Cover -- Title page -- Copyright and credits -- Contributors -- Table of Contents -- Preface -- Chapter 1: Data Types -- C# as a programming language -- .NET-based console applications -- Division of data types -- Value types -- Integral numbers -- Floating-point numbers -- Boolean values -- Unicode characters -- Constants -- Enumerations -- Value tuples -- User-defined structs -- Nullable value types -- Reference types -- Objects -- Strings -- Classes -- Records -- Interfaces -- Delegates -- Dynamics -- Nullable reference types -- Summary -- Chapter 2: Introduction to Algorithms
What are algorithms? -- Definition -- Real-world examples -- Notations for algorithm representation -- Natural language -- Flowchart -- Pseudocode -- Programming language -- Types of algorithms -- Recursive algorithms -- Divide and conquer algorithms -- Back-tracking algorithms -- Greedy algorithms -- Heuristic algorithms -- Dynamic programming -- Brute-force algorithms -- Computational complexity -- Time complexity -- Space complexity -- Summary -- Chapter 3: Arrays and Sorting -- Single-dimensional arrays -- Example -- month names -- Multi-dimensional arrays -- Example -- multiplication table
Example -- game map -- Jagged arrays -- Example -- yearly transport plan -- Sorting algorithms -- Selection sort -- Insertion sort -- Bubble sort -- Merge sort -- Shell sort -- Quicksort -- Heap sort -- Performance analysis -- Summary -- Chapter 4: Variants of Lists -- Simple lists -- Array lists -- Generic lists -- Sorted lists -- Example -- address book -- Linked lists -- Singly linked lists -- Doubly linked lists -- Circular singly linked lists -- Circular doubly linked lists -- List-related interfaces -- Summary -- Chapter 5: Stacks and Queues -- Stacks -- Example -- Reversing a word
Example -- Tower of Hanoi -- Queues -- Example -- Call center with a single consultant -- Example -- Call center with many consultants -- Priority queues -- Example -- Call center with priority support -- Circular queues -- Example -- Gravity roller coaster -- Summary -- Chapter 6: Dictionaries and Sets -- Hash tables -- Example -- phone book -- Dictionaries -- Example -- product location -- Example -- user details -- Sorted dictionaries -- Example -- encyclopedia -- Hash sets -- Example -- coupons -- Example -- swimming pools -- "Sorted" sets -- Example -- removing duplicates -- Summary
Chapter 7: Variants of Trees -- Basic trees -- Implementation -- Example -- hierarchy of identifiers -- Example -- company structure -- Binary trees -- Traversal -- Implementation -- Example -- simple quiz -- Binary search trees -- Implementation -- Example -- BST visualization -- Self-balancing trees -- AVL trees -- Red-black trees -- Tries -- Implementation -- Example -- autocomplete -- Heaps -- Summary -- Chapter 8: Exploring Graphs -- The concept of graphs -- Applications -- Representations -- Adjacency list -- Adjacency matrix -- Implementation -- Node -- Edge -- Graph
Example -- undirected and unweighted edges
Summary Building your own applications is exciting but challenging, especially when tackling complex problems tied to advanced data structures and algorithms. This endeavor demands profound knowledge of the programming language as well as data structures and algorithms – precisely what this book offers to C# developers. Starting with an introduction to algorithms, this book gradually immerses you in the world of arrays, lists, stacks, queues, dictionaries, and sets. Real-world examples, enriched with code snippets and illustrations, provide a practical understanding of these concepts. You’ll also learn how to sort arrays using various algorithms, setting a solid foundation for your programming expertise. As you progress through the book, you’ll venture into more complex data structures – trees and graphs – and discover algorithms for tasks such as determining the shortest path in a graph before advancing to see various algorithms in action, such as solving Sudoku. By the end of the book, you’ll have learned how to use the C# language to build algorithmic components that are not only easy to understand and debug but also seamlessly applicable in various applications, spanning web and mobile platforms
Notes Includes index
Online resource; title from PDF title page (EBSCO, viewed February 29, 2024)
Subject C (Computer program language)
Application software -- Development.
Data structures (Computer science)
algorithms.
Genre/Form Electronic books
Form Electronic book
ISBN 9781803238821
1803238828