C# Data Structures and Algorithms Harness the Power of C# to Build a Diverse Range of Efficient Applications

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...

Descripción completa

Detalles Bibliográficos
Otros Autores: Jamro, Marcin, author (author)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Birmingham, England : Packt Publishing [2024]
Edición:Second edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009805128706719
Tabla de Contenidos:
  • 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
  • Example - directed and weighted edges
  • Traversal
  • Depth-first search
  • Breadth-first search
  • Minimum spanning tree
  • Kruskal's algorithm
  • Prim's algorithm
  • Example - telecommunication cable
  • Coloring
  • Example - voivodeship map
  • Shortest path
  • Example - path in game
  • Summary
  • Chapter 9: See in Action
  • The Fibonacci series
  • Minimum coin change
  • Closest pair of points
  • Fractal generation
  • Rat in a maze
  • A Sudoku puzzle
  • Title guess
  • A password guess
  • Summary
  • Chapter 10: Conclusion
  • Classification
  • Arrays
  • Lists
  • Stacks
  • Queues
  • Dictionaries
  • Sets
  • Trees
  • Graphs
  • The last word
  • Index
  • Other Books You May Enjoy.