C & data structures

Deshpande, P. S.

C & data structures P.S. Deshpande and O.G. Kakde. - Hingham, Mass. : Charles River Media, c2004

Title from title screen. Includes index and link to CD content.

Part I: C Language
Introduction to the C Language
The first program in C
Inputting the data
The control statement (if statement)
The iteration loop (for loop)
The do.. .while loop
The switch statement
Data lypes
Various data types in C
The integer data type family
Overflow in char and unsigned char data types
The char type
Octal numbers
Hexadecimal numbers
Representation of floating-point numbers
Type conversion
Forced conversion
Type casting
C Operators
Arithmetic operator
Relational operator
Logical operator
Ternary operator
Increment operator
Comma operator
Bitwis^ operator
Operator precedence
4 Control Structures
Control structures
The if statement
Scope of an 1 f clause
The if-else statement
The if-else if statement
The switch statement
The while loop
The do-while loop
The for loop
The for loop with a comma operator
The break statement
The continue statement
5 The printf Function
printf
Placeholders
6 Address and Pointers
Address
Pointers
7 The scanf Function
scanf
The scanf placeholders
8 Preprocessing
Preprocessor
undef
ifdef
i fndef
#if
ifelse
ifelif
Error directive
#line
Macro
Macro and function
9 Arrays
Arrays
Address of each element in an array
Accessing an array using pointers'
Manipulating arrays using pointers
Another case of manipulating an array using pointers
Two-dimensional array
Three-dimensional array
Pointer arrays
10 Functions
Functions
The concept of stack
The sequence of execution during a function call
Parameter passing
Call by reference
The concept of global variables
Resolving variable references
Syntax of function definition
Calling function
11 Storage of Variables
Storage
External references
Register variables
Scope of variables
Further scope of variables
12 Memory Allocation
Dynamic memory allocations
13 Recursion
Recursion
Stack overheads in recursion
Writing a recursive function
14 Strings
Strings as an array of characters
String definition
Strings as parameters
15 Structures
Structures
Complex structure definitions
Memory allocation to structure
Programming with structures
Structure pointers
16 Union
Union
17 Files
The concept of files
Direct access files
Part 11: Data Structures
18 Arrays, Searching, and Sorting
Arrays
Application of arrays
Manipulations on the list implemented using an array
Merging of two sorted lists
Transpose of a matrix
Finding the saddle point of a matrix
Implementation of heaps
Sorting and searching
^ Bubble sort
Quick sort
v^erge sort
Heapsort
Searching techniques: linear or sequential search
Binary search
Hashing
Hashing functions
19 Stacks and Queues
The concept of stacks and queues
Stacks
Applications of stacks
Queues
Implementation of queues
Circular queues
Implementation of a queue using.linked representation
Applications of queues
20 UnkedUsts
The concept of the linked lists
Inserting a node by using recursive programs
Sorting and reversing a linked list
Deleting the specified node in a singly Imked list
Inserting a node after the specified node in a singly linked list
Inserting a new node in a sorted list
Counting the nuniber of nodes of a linked list
Merging of two sorted lists
Erasing a linked list
Polynomial representation
Representation of sparse matrices
Circular linked lists
Splitting a list with 2n nodes into two separate and equal lists
Merging of two circular lists
Reversing the direction of links in a singly linked circular list
Doubly linked lists
Insertion of a node in a doubly linked Ust
Deleting a node from a doubly Imked list
AppUcation of doubly linked lists to memory management
21 Trees
The concept of tree
Binary tree and its representation
Binary tree traversal
^inary search tree
Counting the number of nodes in a binary search tree
Swapping of left and right subtrees of a given binary tree
Searching for a target key in a binary search tree
Deletion of a node from binary search tree
22 Graphs
Graphs
Representations of a graph
Computing indegree and outdegree of a node of a graph using
adjacency matrix representation
Depth-first traversal
Breadth-first traversal
Connected component of a graph
Depth-first spanning tree and breadth-first spanning tree
Minimum-cost spanning tree
Directed acyclic graph (DAG)
Part III: Advanced Problems In Data Structures
23 Problems In Arrays, Searching, Sorting, Hashing
Problem: Calculate the value of an N x N determinant
Problem: Write a program to find the saddle point of a matrix,
if it exists
Problem: Multiply two sparse miatrices
Problem: Multiplication of two sparse matrices (different versions)
Problem: Implement A-way sort-merge to sort a file containing records
Problem: Find a plateau in a matrix
Problem: Implementation of a hash search
Problem: Implementation of rehashing
24 Problems in Stacks and Queues
Problem: Convert an infix expression to prefix form
Problem: Implementation of two stacks using an array
25 Problems in Linked Lists
Problem: Implementation of polynomials using linked lists
Problem: Implementation of circular lists by using arrays
Problem: Reversing links in the case of circular list
Problem: Memory management using lists
Problem: Memory management using various schemes
Problem: Garbage collection—the first method
Problem: Garbage collection—the second method
Problem: Compute N equivalence classes
26 Problems in Strings
Problem: Maximize a combination under constraints
Problem: Maximize a combination of strings—the second method
Problem: Closure of sets
Problem: Finding the maximum matching pattern in the string
Problem: Implementation of the soundex function
27 Problems in Trees
Problem: Write a non-recursive version of preorder
Problem: Write a non-recursive version of postorder
Problem: Preorder traversal of a threaded binary tree
Problem: Implementation of a set using a binary tree
Problem: Huffman coding
Problem: Implementation of a B-tree
Problem: Implementation of a B+ tree
28 Problems in Graphs
Problem: The dfs method for graph traversal
Problem: Connected components in a graph
Problem: Minimum spanning tree
Problem: Topological sort
Problem: Finding the shortest path by using an adjacency matrix
Problem: Finding the shortest path by using an adjacency list
Problem: The m shortest path
Problem: The all-cost shortest path
29 Miscellaneous Problems
Problem: The two-class classification problem
Problem: The iV-coins problem
Problem: All combinations of strings
Problem: The 8-knights problem
Problem: A^-queens problem
Problem: Mapping of N-queues in an array
Problem: Implementation of A* algorithm


C (Computer program language)
Data Structures (Computer science)

005.1
SIKKIM UNIVERSITY
University Portal | Contact Librarian | Library Portal

Powered by Koha