Programming and Data Structures
This book has been designed for the course on Programming and Data Structures for the undergraduate students of Anna University, Chennai. It integrates the core concepts of C Programming and Data Structures into a single comprehensive textbook. The contents of the book are student-friendly, example-...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Pearson India
2009.
|
Edición: | 1st edition |
Colección: | Always learning.
|
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009628441306719 |
Tabla de Contenidos:
- Cover
- Preface
- Contents
- Course Syllabus
- Chapter 1: Program Development Styles and Basics of C
- 1.1 Program Development Methodologies
- Monolithic Programming
- Procedural Programming
- 1.2 Programming Style
- 1.3 Stepwise Refinement and Modularity
- 1.4 Problem Solving Techniques
- 1.5 Algorithm
- Classification of Algorithms
- 1.6 Flowcharts
- 1.7 Pseudocode
- 1.8 Sequence and Selection
- 1.9 Iteration and Recursion
- Iteration
- Recursion
- 1.10 Recursion Versus Iteration
- 1.11 Overview of Compilers and Interpreters
- 1.12 Structure of A C Program
- 1.13 Programming Rules
- 1.14 Executing the Program
- Summary
- Exercises
- Chapter 2: The C Declarations
- 2.1 Introduction
- 2.2 The C Character Set
- 2.3 Delimiters
- 2.4 The C Keywords
- 2.5 Identifiers
- 2.6 Constants
- A. Numerical Constants
- B. Character Constants
- 2.7 Variables
- 2.8 Rules for Defining Variables
- 2.9 'C' Aggregate Data Types
- Basic Data Type
- Derived Data Type
- 2.10 Declaring Variables
- 2.11 Initializing Variables
- 2.12 Type Conversion
- Summary
- Exercises
- Chapter 3: Operators and Expressions
- 3.1 Introduction
- 3.2 Priority of Operators and their Clubbing
- 3.3 Comma and Conditional Operator
- Syntax
- 3.4 Arithmetic Operators
- 3.5 Relational Operators
- 3.6 Logical Operators
- 3.7 Bitwise Operators
- Summary
- Exercises
- Chapter 4: Input and Output in C
- 4.1 Introduction
- 4.2 Formatted Functions
- Syntax
- 4.3 Unformatted Functions
- a) Character I/O
- b) String I/O
- Syntax
- Syntax
- 4.4 Commonly Used Library Functions
- Syntax
- Syntax
- Syntax
- Syntax
- Summary
- Exercises
- Chapter 5: Decision Statements
- 5.1 Introduction
- 5.2 The if Statement
- 5.3 The if . . . else Statement
- 5.4 Nested if - else Statement
- 5.5 The break Statement
- 5.6 The continue Statement.
- 5.7 The goto Statement
- 5.8 The switch Statement
- 5.9 Nested switch () Case
- 5.10 The switch () Case and Nested IFS
- Summary
- Exercises
- Chapter 6: Loop Control Statements
- 6.1 Introduction
- 6.2 The for Loop
- 6.3 Nested for Loops
- 6.4 The while Loop
- 6.5 The do-while
- 6.6 The do-while Statement with while Loop
- Summary
- Exercises
- Chapter 7: Arrays
- 7.1 Introduction
- 7.2 Array Initialization
- 7.3 Definition of Array
- 7.4 Characteristic of Array
- 7.5 One-dimensional Array
- 7.6 Predefined Streams
- 7.7 Two-dimensional Array
- 7.8 Three- or Multi-dimensional Arrays
- 7.9 The sscanf () and sprintf () Functions
- Summary
- Exercises
- Chapter 8: Working with Strings & Standard Functions
- 8.1 Introduction
- 8.2 Declaration and Initialization of String
- The Output will be SANJAY
- 8.3 Display of Strings with Different Formats
- Where, the text is 'PRABHAKAR'
- 8.4 String Standard Functions
- 8.5 Applications of Strings
- Summary
- Exercises
- Chapter 9: Pointers
- 9.1 Introduction
- 9.2 Features of Pointers
- 9.3 Pointer Declaration
- 9.4 Arithmetic Operations with Pointers
- 9.5 Pointers and Arrays
- 9.6 Pointers and Two-dimensional Arrays
- 9.7 Array of Pointers
- 9.8 Pointers to Pointers
- 9.9 Pointers and Strings
- 9.10 Void Pointers
- Summary
- Exercises
- Chapter 10: Functions
- 10.1 Introduction
- 10.2 Definition of a Function
- Why use Functions
- How a Function Works
- 10.3 Declaration of a Function
- 10.4 The Return Statement
- 10.5 Types of Functions
- 10.6 Call by Value and Reference
- 10.7 Function Returning More Values
- 10.8 Function as an Argument
- 10.9 Functions with Arrays and Pointers
- 10.10 Recursion
- Summary
- Exercises
- Chapter 11: Preprocessor Directives
- 11.1 Introduction
- 11.2 The #define Directive
- 11.3 Undefining a Macro
- Syntax.
- 11.4 Token Pasting and Stringizing Operators
- 11.5 The # include Directive
- 11.6 Conditional Compilation
- Syntax
- 11.7 The #ifndef Directive
- 11.8 The #error Directive
- 11.9 The # line Directive
- 11.10 Inline Directive
- 11.11 The #pragma Saveregs
- 11.12 The #pragma Directive
- Syntax
- 11.13 The Predefined Macros in Ansi and Turbo C
- 11.14 Standard I/O Predefined Streams in stdio.h
- 11.15 The Predefined Macros inctype. h
- Summary
- Exercises
- Chapter 12: Structure and Union
- 12.1 Introduction
- 12.2 Features of Structures
- 12.3 Declaration and Initialization of Structures
- 12.4 Structure within Structure
- 12.5 Array of Structures
- 12.6 Pointer to Structure
- 12.7 Structure and Functions
- 12.8 typedef
- 12.9 Bit Fields
- 12.10 Enumerated Data Type
- 12.11 Union
- 12.12 Calling Bios and Dos Services
- 12.13 Union of Structures
- Summary
- Exercises
- Chapter 13: Files
- 13.1 Introduction
- A) Definition of File
- 13.2 Streams and File Types
- A) File Types
- 13.3 Steps for File Operations
- Syntax for opening the file
- A. Text Modes
- Syntax
- Syntax
- Syntax
- B Binary Modes
- 13.4 File I/O
- Syntax
- 13.5 Structures Read and Write
- 13.6 Other File Function
- 13.7 Searching Errors in Reading/Writing Files
- 13.8 Low Level Disk I/O
- 13.9 Command Line Arguments
- 13.10 Application of Command Line Arguments
- 3. Rename
- 13.11 Environment Variables
- 13.12 I/O Re direction
- Summary
- Exercises
- Chapter 14: Linear Data Structure
- 14.1 Introduction to Data Structure
- 14.2 List
- 14.3 Implementation of a List
- 14.4 Traversal of a List
- 14.5 Searching and Retrieving an Element
- 14.6 Predecessor and Successor
- 14.7 Insertion
- 14.8 Deletion
- 14.9 Sorting
- 14.10 Merging Lists
- 14.11 Representation of a Stack
- 14.12 Stack-Related Terms.
- 14.13 Operation on a Stack
- 14.14 Implementation of a Stack
- 14.15 Queues
- 14.16 Various Positions of Queue
- 14.17 Representation of Queue
- 14.18 Single Linked List
- 14.19 Linked List with and without Header
- Linked List with Header
- Linked List without Header
- 14.20 Insertion
- Insertion of the Node at the Starting
- Insertion of the Node at the End
- Insertion of a Node at a Given Position
- Counting Nodes
- 14.21 Deletion
- 14.22 Double Linked List
- Insertion
- Deletion
- 14.23 Applications
- Polynomial Operation
- Linked Dictionary
- Summary
- Exercises
- Chapter 15: Non-Linear Data Structure
- 15.1 Trees
- 15.2 Binary Trees
- 15.3 Types of Binary Tree
- 15.4 Binary Tree Representation
- 15.5 Traversing Binary Trees
- 15.6 Binary Search Tree
- 15.7 Insertion and Deletion Operations
- 15.8 Hashing Technology
- Summary
- Exercises
- Chapter 16: Searching and Sorting
- 16.1 Introduction
- 16.2 Searching
- 16.3 Linear (Sequential) Search
- 16.4 Binary Search
- 16.5 Sorting
- 16.6 Insertion Sort
- 16.7 Selection Sort
- Time Complexity
- Comparison with Other Methods
- 16.8 Bubble Sort
- Time Complexity
- 16.9 Quick Sort
- Time Complexity
- Comparison with Other Methods
- 16.10 Tree Sort
- Time Complexity
- Summary
- Exercises.