My Account Log in

3 options

Everyday data structures / William Smith.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Smith, William, author.
Language:
English
Subjects (All):
Data structures (Computer science).
Programming languages (Electronic computers).
Physical Description:
1 online resource (336 pages) : illustrations (some color)
Edition:
1st edition
Place of Publication:
Birmingham, England ; Mumbai, [India] : Packt, 2017.
System Details:
text file
Summary:
A practical guide to learning data structures simply and easily About This Book This book is a very practical, friendly, and useful guide that will help you analyze problems and choose the right data structures for your solution Learn to recognize data patterns for determining which structures apply to a given problem Explore the unique rules or ?gotchas? that will help you become an excellent programmer Who This Book Is For If you're self-taught programmers in any language who wants to gain a solid understanding of data structures and how to use them to solve real-world problems in your day-to-day development work, then this book is for you. What You Will Learn A rapid overview of data types, applications for each type, best practices and high-level variations between platforms Review the most common data structures and build working examples in the languages used for mobile platform software development Understand advanced data structure concepts such as generic collections, searching and sorting algorithms, and recursion Learn to use Stacks (LIFO) and queues (FIFO) in your daily application Add/remove objects and nest arrays and dictionaries within another dictionary and understand why such architecture is often preferred or necessary Get acquainted with the tree structures such as heap, binary, and graphs, apply them to work Unleash the power of different sorting techniques such as bubble sort, quick sort, merge sort, insertion sort, and radix sort Perform searching operations on arrays, heaps, graphs, and binary trees in different languages In Detail If you want to learn different data structures and their real-world applications quickly through practical examples, then Everyday Data Structures is for you. This book can introduce you to new data structures and their potential applications through examples in languages common to mobile software development on the most popular platforms. The examples are presented with real-world concepts using language that everyone will understand. This book is logically divided into two parts; the first one covers the basic data structures that are built into most languages such as Objective-C, C#, Java, and Swift. It will cover detailed analysis of the common data structures such as arrays, lists, stacks, Queues, and heaps, typical applications, and specific concerns for each language. Each chapter will provide in-depth examples in several popular languages based on real-world applications. The second p...
Contents:
Cover
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Data Types: Foundational Structures
Numeric data types
Integer types
Single precision float
Double precision float
Currency
Typecasting
Statically versus dynamically typed languages
Implicit and explicit casting
Widening and narrowing
Boolean data type
Operator precedence
Short-circuiting
Strings
Summary
Chapter 2: Arrays: Foundational Collections
Mutable versus immutable arrays
Case study: users logged in to a web service
Advanced topics
Linear search
Primitive arrays
Object arrays
Mixed arrays
Multidimensional arrays
Jagged Arrays
Chapter 3: Lists: Linear Collections
List implementations
Array-based lists
Linked list
Instantiating lists
Revisiting users logged in to a service
Generics
Case study: bike route
Doubly linked list
Searching
A few pointers
Chapter 4: Stacks: LIFO Collections
Initializing stacks
UINavigationController
Stack operations
Case study: motion planning algorithm
Advanced topics - stack implementations
Array-based stack
Linked list-based stack
Chapter 5: Queues: FIFO Collections
Initializing queues
Queue operations
Case study: customer service
Array-based queues
Linked list-based queues
Heap-based queues
Double-ended queues
Priority queues
Chapter 6: Dictionaries: Keyed Collections
Initializing dictionaries
Dictionary operations
Case study: arcade ticket totals
Hash table based dictionaries
Search tree based dictionaries
Chapter 7: Sets: No Duplicates
Set theory
Initializing sets
Set operations.
Example: revisiting users logged in to a service
We would need a contract
Case-study: music playlists
Hash table-based sets
Tree-based sets
Array-based sets
Chapter 8: Structs: Complex Types
The essentials
C#
Creating structs in C#
Rule 1: The struct will logically represent a single value
Rule 2: Each instance of the struct must be under 16 bytes
Rule 3: The data must be immutable
Rule 4: The struct will not require repeated boxing
Conversion
Java
Objective-C
Creating structs in Objective-C
Swift
Creating structs in Swift
Enums
Case study: the Metro line
Chapter 9: Trees: Non-Linear Structures
Tree data structure versus tree data type
Tree terminology
Common operations
Instantiating trees
Tree structures
Recursion
Traversal
Chapter 10: Heaps: Ordered Trees
Heap implementations
Heap operations
Instantiating heaps
Min heap structure
Common applications
Chapter 11: Graphs: Values with Relationships
Visual graph concepts
Graph operations
Graph implementations
The graph data structure
Chapter 12: Sorting: Bringing Order Out Of Chaos
Selection sort
Insertion sort
Bubble sort
Quick sort
Merge sort
Bucket sort
Searching: Finding What You Need
Binary search
Jump search
Index.
Notes:
Includes index.
Description based on online resource; title from PDF title page (ebrary, viewed March 27, 2017).
ISBN:
9781787129832
1787129837
OCLC:
983202660

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Library Catalog Using Articles+ Library Account