Book description
C is the most widely used programming language of all time. It has been used to create almost every category of software imaginable and the list keeps growing every day. Cutting-edge applications, such as Arduino, embeddable and wearable computing are ready-made for C.
Advanced Topics In C teaches concepts that any budding programmer should know. You'll delve into topics such as sorting, searching, merging, recursion, random numbers and simulation, among others. You will increase the range of problems you can solve when you learn how to manipulate versatile and popular data structures such as binary trees and hash tables.
This book assumes you have a working knowledge of basic programming concepts such as variables, constants, assignment, selection (if..else) and looping (while, for). It also assumes you are comfortable with writing functions and working with arrays. If you study this book carefully and do the exercises conscientiously, you would become a better and more agile programmer, more prepared to code today's applications (such as the Internet of Things) in C.
What you'll learn
What are and how to use structures, pointers, and linked lists
How to manipulate and use stacks and queues
How to use random numbers to program games, and simulations
How to work with files, binary trees, and hash tables
Sophisticated sorting methods such as heapsort, quicksort, and mergesort
How to implement all of the above using C
Who this book is for
Those with a working knowledge of basic programming concepts, such as variables, constants, assignment, selection (if..else) and looping (while, for). It also assumes you are comfortable with writing functions and working with arrays.
Table of contents
- Title Page
- Dedication
- Contents at a Glance
- Contents
- About the Author
- About the Technical Reviewer
- Preface
- CHAPTER 1: Sorting, Searching, and Merging
-
CHAPTER 2: Structures
- 2.1 Defining Structures
- 2.2 How to Declare a Structure
- 2.3 Working with an Array of Structures
- 2.4 Searching an Array of Structures
- 2.5 Sorting an Array of Structures
- 2.6 How to Read, Search, and Sort a Structure
- 2.7 Nested Structures
- 2.8 Working with Fractions
- 2.9 A Voting Problem
- 2.10 Passing Structures to Functions
- CHAPTER 3: Pointers
-
CHAPTER 4: Linked Lists
- 4.1 Defining Linked Lists
- 4.2 Basic Operations on a Linked List
- 4.3 Dynamic Storage Allocation: malloc, calloc, sizeof, free
- 4.4 Building a Linked List: Adding New Item at the Tail
- 4.5 Insertion into a Linked List
- 4.6 Building a Linked List: Adding a New Item at the Head
- 4.7 Deletion from a Linked List
- 4.8 Building a Sorted Linked List
- 4.9 Example: Palindrome
- 4.10 Saving a Linked List
- 4.11 Arrays vs. Linked Lists
- 4.12 Storing a Linked List Using Arrays
- 4.13 Merging Two Sorted Linked Lists
- 4.14 Circular and Two-Way Linked Lists
- CHAPTER 5: Stacks and Queues
-
CHAPTER 6: Recursion
- 6.1 Recursive Definition
- 6.2 Writing Recursive Functions in C
- 6.3 Converting a Decimal Number to Binary Using Recursion
- 6.4 Printing a Linked List in Reverse Order
- 6.5 Towers of Hanoi
- 6.6 Writing Power Functions
- 6.7 Merge Sort
- 6.8 static Variables
- 6.9 Counting Organisms
- 6.10 Finding a Path Through a Maze
- CHAPTER 7: Random Numbers, Games, and Simulation
-
CHAPTER 8: Working with Files
- 8.1 Reading Data from a File
- 8.2 Sending Output to a File
- 8.3 Text and Binary Files
- 8.4 Internal vs. External File Name
- 8.5 fopen and fclose
- 8.6 getc and putc
- 8.7 feof and ferror
- 8.8 fgets and fputs
- 8.9 Input/Output for Binary File
- 8.10 Random Access Files
- 8.11 Indexed Files
- 8.12 Updating a Random Access File
- CHAPTER 9: Introduction to Binary Trees
- CHAPTER 10: Advanced Sorting
- CHAPTER 11: Hashing
- Index
Product information
- Title: Advanced Topics in C: Core Concepts in Data Structures
- Author(s):
- Release date: October 2013
- Publisher(s): Apress
- ISBN: 9781430264002
You might also like
book
Data Structures using C, 2nd Edition
Data structure is the logical organization of a set of data items that collectively describes an …
book
Introduction to Data Structures in C
Introduction to Data Structures in C is an introductory book on the subject. The contents of …
book
Pointers in C Programming: A Modern Approach to Memory Management, Recursive Data Structures, Strings, and Arrays
Gain a better understanding of pointers, from the basics of how pointers function at the machine …
book
Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching, Third Edition
“This is an eminently readable book which an ordinary programmer, unskilled in mathematical analysis and wary …