Ethio Programming
Home
C++
Chapter One
Introduction to Programming
Overview of Computers and Computer Organization
The Evolution of Operating System
Problem solving Techniques
Chapter Two
What is the meaning of computer
Programming Language Categories
Major Programming Paradigms
Problem solving Techniques in using a Computer
System Development Life Cycle (SDLC)
Installing Codeblock and Our First Program
Identifier, Variable, Scope of Variable and Data type
Special Printing Characters
Constant
Expressions and Statements
Operators and Assignment Operator
Compound Assignment Operator
Arithmetic and Relational Operator
Logical Operators
Increment and Decrement Operator
Conditional, Comma, sizeof() Operator and typecasting
Operator Precedence, cin input stream object and comment
Chapter Three
Control Structure and Conditional if statement
Conditional if else statement
Nested if else statement
Switch Statement
Loop Statement
Nested For loop
While Loop
Do While Loop in Programming
Break Statement
Continue Statement
Chapter Four
Introduction to Function
Predefined Function and Function Declaration
Function Definition
Function Calling
Function call by Value and By Reference
Default Argument and Scope of Variables
Function Overloading
Recursive Function
Chapter Five
Introduction to Array
Accessing the whole elements of the array
Some examples and Copying Array Elements
Multi-Dimensional Array
Reading and Storing Individual elements from or to 2D Array
String
Copying, Concatenation and Comparison of the String
The String Class and its Methods
Chapter Six
Structure
Array of Structs and Declaring a struct as part of a struct
Defining a Structure in a Structure
Structure, Reference and Pointer
Chapter Seven
Pointer
Pointer Operator
Pointer Assignment
Pointer Arithmetic
Pointers to Pointers, Pointers with const and void Pointers
Pointer and Array
Pointer and String
Pointer and Structure
The new Operator
Self-referencial Structure and Linked Lists
Chapter Eight
File
File Input and Output Class and File Types
Checking State Flags
get and put Stream Pointer
Binary File Processing
Buffers and Syncronization
JAVA
Chapter One
What is Computer
How to Install Java
Steps of Developing Java Program
Chapter Two
The first Java Program
Displaying text with printf
Import Declarations Declaring a Scanner Class
Arithmetic Operator and Rules of Precedence
Decision Making, Equality and Relational Operators
Chapter Three
Method Examples
Classes, Objects and Methods and Access Modifiers public and private
static Method main
Primitive Types vs. Reference Types
Declaring an Account Constructor for Custom Object Initialization
Chapter Four
Control Structures - if single statement
Conditional Operator
while Loop (Repetition Statement)
for loop (Repetition Statement)
do...while loop and Nested Loop
Logical, Compound Assignment and Inc and Dec Operators
switch Multiple-Selection Statement, Break and Continue
Chapter Five
Methods
static methods and variables
Declaring Methods with Multiple Parameters
Notes on Declaring and Using Methods
Method-Call Stack and Stack Frames
Argument Promotion and Casting
Method Overloading
Assembling Strings with String Concatenation
Chapter Six
Array
Declaring and Creating Arrays
Using an Array Initializer
Reading array values from the keyboard
Enhanced for Statement
Passing Arrays to Method
Pass-By-Value vs. Pass-By-Reference
Multidimensional Arrays
Initialization of Two dimensional Arrays
Reading from the keyboard for 2D Arrays
Creating Two-Dimensional Arrays with Array-Creation Expressions
Variable-Length Argument Lists
Using Command-Line Arguments
Class Arrays
Introduction to Collections and Class ArrayList
Chapter Seven
Predicate Methods
Composition
Enum Types
Garbage Collection
static Import and Package Access
This keyword, String.format method, Constructor Overloading and Final instance Variables,
Using Big Decimal
Chapter Eight
Inheritance, Superclasses and Subclasses
Protected Members
Polymorphism and Interfaces
Implementing for Extensibility
Super class and Subclass Variables
Abstract Classes and Methods
Declaring an Abstract Class and Abstract Methods
getClass and getName methods from Object class Downcasting and Calling Polymorphically
final Methods and Classes
Interface
Chapter Nine
Exception Handling
Divide by Zero for floating point Numbers and Arithmetic Exception
InputMismatchException and Program Termination
Handling ArithmeticExceptions and InputMismatchExceptions
Multi-catch
Uncaught Exceptions
Java Exception Hierarchy
Checked and Unchecked Exception
multiple catch blocks
finally Block
Finally Block and System.err standard error Stream
Rethrowing Exceptions
Stack Unwinding
Chained Exceptions
HTML
Chapter One
Introduction
Web Basics
Headings
Hyper Links
Chapter Two
Image Rendering
Image as a Link
Background Image
Image Floating
Chapter Three
Unordered List
Ordered List
Nested List
Description List
Chapter Four
Table
Table header, Caption, Footer
Table rowspan and colspan
Chapter Five
Form
Form action attribute and submit button
Form Data List
Fieldset and Legend
Form Select input Type and Multiple Selection
Form Input TextArea
get and post method email and checkbox
All Input Types
Chapter Six
Input Type Validation
Internal and External Linking
Html Meta Data
Special Symbols
Chapter Seven
Picture Element
Video Element
Audio Element
Chapter Eight
Html div and hr
Html Section and Nav
Footer and Meter
Html Figure and Detail Article
CSS
Chapter One
Introduction to CSS
Inline Style Sheet
Internal Style Sheet
Extenal Style Sheet
Chapter Two
CSS Selector
Grouping Selector
CSS Comment
Chapter Three
CSS Color Part 1
CSS Color Part 2
Background
Chapter Four
CSS Border Part 1
CSS Border Part 2
CSS Margin
Margin inherit auto
CSS Padding
Text Attributes
Text Attributes Part 2
CSS Font
Link Decoration
CSS List Decoration
Chapter Five
Table Part 1
Table Part 2
Chapter Six
CSS Display Property
Width and Max-width
Position Property
Overflow Property
CSS Float
CSS Clear Property
Clearfix Property
Navigation Menu Part 1
Navigation Menu Part 2
Chapter Seven
CSS Combinator
Pseudo Class Part 1
Pseudo Class Part 2
Pseudo Element
CSS Opacity
CSS Attribute Selector Part 1
CSS Attribute Selector Part 2
Chapter Eight
CSS Form Part 1
CSS Form Part 2
Chapter Nine
Rounded Border
Border Image
Linear Gredient Part 1
Linear Gredient Part 2
Redial Grediant
Text Shadow
Box Shadow
Chapter Ten
Responsive Page Part 1
Responsive Page Part 2
Responsive Page Part 3
Media Query Part 1
Media Query Part 2
Media Query Part 3
Sample Project
JAVASCRIPT
Chapter One
Introduction to Javascript
Html Element Status
Javascript Location
Javascript Output Methods
Javascript Comment
Javascript Statement
White Space and Block
Line Break in a String and Variable
Chapter Two
Data Type String
Data Type Number Boolean and Array
Data Type Object, Undefined and Null
Primitive Types and Complex Data
Operator Arithmetic Operator
Assignment and Compound Assignment Operator
Comparison Operator
Logical and Typeof Operators
Variable Scope
Chapter Three
Javascript Object Part 1
Javascript Object Part 2 Methods
Javascript String
String Index Manipulation
String Search and SLicing
Chapter Four
Date Objects Part 1
Date Object Part 2
Date Object Part 3
Date Formats Part 1
Date Formats Part 2
getDate Methods
setDate Methods
Chapter Five
Math Methods
Random Numbers
Chapter Six
Conditional Statements
Swtich Statement Javascript
For Loop
For In loop
While Loop in Javascript
what is a Do While Loop
Break, Continue and Label
Chapter Seven
Data Type Conversion
Bitwise Operator
Regex (Regular Expresion)
Chapter Eight
Form Validation
Form Validation Part 2
PHP
Chapter One
Introduction PHP
Installing wampserver
Hello World
Chapter Two
Variable
Variable Scope in PHP
Echo and print
using html in php and embed php code inside html
Data Type
String in PHP
Constants
Arithmetic Operator
Assignment Operator
Comparison or Relational Operator
Increment and Decrement Operators
Logical Operator
String Operator
Chapter Three
if, if else and elseif conditional statement
Conditional Switch Statement
For Loop Part 1
For Loop Part 2
While Loop in PHP
Do While Loop
Forearch Loop
Chapter Four
Function
Function Part 2
Function Parameter and Default Argument
Function Return Type
Chapter Five
Array Part 1
Array Part 2
Associative Array
Associative Array and Sorting
Multi-dimensional Array in PHP
Chapter Six
Super global Variables $GLOBAL
Super global Variables $SERVER and $REQUEST
Super Global Variables $_GET and $_POST
Chapter Seven
Form Part 1
Form Part 2
Form Validation Part 1
Forms Validation Part 2
Form Validation Part 3
Chapter Eight
Date and Time
Time Zone
String to time and Make Time
Chapter Nine
Include and Require
using a variables of included php file
Chapter Ten
File Reading Part 1
File Reading Part 2
Writing to a File
File Upload Part 1
File Upload Part 2
Rename Uploaded File and Restrict File Size
Restrict the file type and restrict duplicate file
Chapter Eleven
Cookie Part 1
Cookie Part 2
Deleter Cookie
Session Part 1
Session Part 2
Chapter Twelve
Filtering Input data Part 1
Filtering Input data Part 2
Error Handling
Customizing Error
Chapter Thirteen
Introduction to Database and phpmyadmin
Create connection
Create Database
Create Table
Insert into Table
Get the ID of last inserted Item and Insert Multiple Records
Prepared Statement
Prepared Statement with an HTML Form
Select Statement
Select Statement with an HTML Form
Delete Statement
Delete with an HTML Form
Update Statement
Update Statement with an HTML Form
DATA STRUCTURE
Chapter One
Data Structures and Algorithms
Abstract Data Types
Data Structure
Algorithm
Properties of Algorithms
Chapter Two
Algorithm analysis
Empirical Algorithm Analysis
Theoretical Algorithm Analysis
Formal Approach to Analysis
Categories of Algorithm Analysis
Order of Magnitude
Rules to estimate Big Oh of a given function
Chapter Three
Inroduction to Sorting and Searching
Sequential Searching (Linear)
Binary Searching
Simple Sorting Algorithms
Simple sort
Bubble sort
Selection Sort
Insertion Sort
Chapter Four
Data Structure and its applications
Linked List
Singly Linked List
Adding a node to the end of a singly linked list
Adding a node to the front of a singly linked list
Adding a node to the right of a specific value in a singly linked list
Adding a node to the left of a specific value in a singly linked list
Deleting a node from the front of a singly linked list
Deleting a node from the end of a singly linked list
Deleting a node of specific data of a singly linked list
Display in a forward manner in a singly linked list
Doubly linked lists
Adding a node to the end of a doubly linked list
Adding a node to the front of a doubly linked list
Adding a node to the left of a specific data in a doubly linked list
Adding a node to the right of a specific data in a doubly linked list
Deleting a node from the end of a doubly linked list
Deleting a node from the front of a doubly linked list
Deleting any node using the search data from a doubly linked list
Display the node from the doubly linked list in a forward manner
Display the node from the doubly linked list in a backward manner
Circular linked lists
Adding a node to the end of a Circular Singly linked list
Adding a node to the front of a Circular Singly linked list
Adding a node to the left of a specific data in a Circular Singly linked list
Adding a node to the right of a specific data in a Circular Singly linked list
Deleting a node from the end of a Circular Singly linked list
Deleting a node from the front of a Circular Singly linked list
Deleting any node using the search data from a Circular Singly linked list
Display the node from the Circular Singly linked list in a forward manner
Chapter Five
Abstract Data Type Queue
Array Implementation of Queue
enqueue an element
dequeue an element
display next element to be dequeued
display all elements in the queue in a forward manner
display all elements in the queue in a backward manner
Array of Structs Implementation of a queue enqueue an element
dequeue an element in an Array of Structs
display next element to be dequeued in an Array of Structs
display all elements in the queue in a forward manner in an array of structs
display all elements in the queue in a backward manner in an array of structs
Linked List Implementation of a queue
Linked List Implementation
enqueue an element from a doubly linked list
dequeue an element from a doubly linked list
display next element to be dequeued from a doubly linked list
display all elements in the queue in a forward manner in a doubly linked list
display all elements in the queue in a backward manner in a doubly linked list
Priority Queue
Demerging Queues
Merging Queues
Application of Queues
Chapter Six
Stack
Infix to Postfix Conversion
Postfix Evaluation Psuedocode
Array Implementation of a stack
push an element to the top of the stack in an Array
pop an element from the top of the stack in an array
display the content of the top element in the stack in an array
display the content of all elements in the stack forward manner in an array
display the content of all elements in the stack back manner in an array
Array of Structs Implementation of a stack
push an element to the top of the stack
pop an element from the top of the stack
display the content of the top element in the stack
display the content of all elements in the stack in a forward manner
display the content of all elements in the stack in a backward manner
Linked list Implementation of a stack
push an element to the top of the stack in a linked list
pop an element from the top of the stack using a linked list
display the content of the top element in the stack using a linked list
display the content of all elements in the stack in a forward manner in a linked list
display the content of all elements in the stack in a backward manner in a linked list
Chapter Seven
Introduction to Data structure
Tree Terminologies
Binary search tree (ordered binary tree)
Insertion of data into a BST
Traversing (Visiting) in a BST
Application of binary tree traversal
Implementation of the Preorder traversals
Implementation of the Inorder traversals
Implementation of the Postorder traversals
Searching a data in BST
Finding Minimum value in a Binary Search Tree
Finding Maximum value in a Binary Search Tree
Deleting from a BST
Chapter Eight
Graph
Directed and Undirected Graph
Sparse and dense graphs
Weighted Graph and Unweighted Graph
Breadth-first search
The algorithm works on both directed and undirected graphs
Shortest paths
Implementation of Breadth-first search
Enqueue an Item into a graph of the BFS
Dequeue an item from the graph of BFS
Check if the graph of BFS has no any element
Create a graph BFS
Traversing the graph of a breadth first search
Depth first search
pseudocode of depth-first-search algorithm
Implementation of Depth First Search Algorithm
Pushing an Item into a graph of the DFS
Popping an item from the graph of DFS
Check if the Graph of a Depth First Search is Empty
Creating a Depth First Search Graph
Traversing in a Graph of Depth First Search
About
Contact
☰
List of Subjects
C++
Chapter One: Computer Programming
Introduction to Programming
Overview of Computers and Computer Organization
The Evolution of Operating System
Problem solving Techniques
Chapter Two: C++ Basics
What is the meaning of computer
Programming Language Categories
Major Programming Paradigms
Problem solving Techniques in using a Computer
System Development Life Cycle (SDLC)
Installing Codeblock and Our First Program
Identifier, Variable, Scope of Variable and Data type
Special Printing Characters
Constant
Expressions and Statements
Operators and Assignment Operator
Compound Assignment Operator
Arithmetic and Relational Operator
Logical Operators
Increment and Decrement Operator
Conditional, Comma, sizeof() Operator and typecasting
Operator Precedence, cin input stream object and comment
Chapter Three: Control Structure
Control Structure and Conditional if statement
Conditional if else statement
Nested if else statement
Switch Statement
Loop Statement
Nested For loop
While Loop
Do While Loop in Programming
Break Statement
Continue Statement
Chapter Four: Function
Introduction to Function
Predefined Function and Function Declaration
Function Definition
Function Calling
Function call by Value and By Reference
Default Argument and Scope of Variables
Function Overloading
Recursive Function
Chapter Five: Array and String
Introduction to Array
Accessing the whole elements of the array
Some examples and Copying Array Elements
Multi-Dimensional Array
Reading and Storing Individual elements from or to 2D Array
String
Copying, Concatenation and Comparison of the String
The String Class and its Methods
Chapter Six: Structure
Structure
Array of Structs and Declaring a struct as part of a struct
Defining a Structure in a Structure
Structure, Reference and Pointer
Chapter Seven: Pointer
Pointer
Pointer Operator
Pointer Assignment
Pointer Arithmetic
Pointers to Pointers, Pointers with const and void Pointers
Pointer and Array
Pointer and String
Pointer and Structure
The new Operator
Self-referencial Structure and Linked Lists
Chapter Eight: File
File
File Input and Output Class and File Types
Checking State Flags
get and put Stream Pointer
Binary File Processing
Buffers and Syncronization
JAVA
Chapter One: Introduction to Programming
What is Computer
How to Install Java
Steps of Developing Java Program
Chapter Two: The first program in java
The first Java Program
Displaying text with printf
Import Declarations Declaring a Scanner Class
Arithmetic Operator and Rules of Precedence
Decision Making, Equality and Relational Operators
Chapter Three: Classes, Objects and Methods
Method Examples
Classes, Objects and Methods and Access Modifiers public and private
static Method main
Primitive Types vs. Reference Types
Declaring an Account Constructor for Custom Object Initialization
Chapter Four: Control Structures
Control Structures - if single statement
Conditional Operator
while Loop (Repetition Statement)
for loop (Repetition Statement)
do...while loop and Nested Loop
Logical, Compound Assignment and Inc and Dec Operators
switch Multiple-Selection Statement, Break and Continue
Chapter Five: Methods
Methods
static methods and variables
Declaring Methods with Multiple Parameters
Notes on Declaring and Using Methods
Method-Call Stack and Stack Frames
Argument Promotion and Casting
Method Overloading
Assembling Strings with String Concatenation
Chapter Six: Arrays and ArrayLists
Array
Declaring and Creating Arrays
Using an Array Initializer
Reading array values from the keyboard
Enhanced for Statement
Passing Arrays to Method
Pass-By-Value vs. Pass-By-Reference
Multidimensional Arrays
Initialization of Two dimensional Arrays
Reading from the keyboard for 2D Arrays
Creating Two-Dimensional Arrays with Array-Creation Expressions
Variable-Length Argument Lists
Using Command-Line Arguments
Class Arrays
Introduction to Collections and Class ArrayList
Chapter Seven: Predicate Methods, Enum types and others
Predicate Methods
Composition
Enum Types
Garbage Collection
static Import and Package Access
This keyword, String.format method, Constructor Overloading and Final instance Variables,
Using Big Decimal
Chapter Eight: Inheritance and Polymorphism
Inheritance, Superclasses and Subclasses
Protected Members
Polymorphism and Interfaces
Implementing for Extensibility
Super class and Subclass Variables
Abstract Classes and Methods
Declaring an Abstract Class and Abstract Methods
getClass and getName methods from Object class Downcasting and Calling Polymorphically
final Methods and Classes
Interface
Chapter Nine: Exception Handling
Exception Handling
Divide by Zero for floating point Numbers and Arithmetic Exception
InputMismatchException and Program Termination
Handling ArithmeticExceptions and InputMismatchExceptions
Multi-catch
Uncaught Exceptions
Java Exception Hierarchy
Checked and Unchecked Exception
multiple catch blocks
finally Block
Finally Block and System.err standard error Stream
Rethrowing Exceptions
Stack Unwinding
Chained Exceptions
HTML
Chapter One: Html Basics
Introduction
Web Basics
Headings
Hyper Links
Chapter Two: Image
Image Rendering
Image as a Link
Background Image
Image Floating
Chapter Three: List
Unordered List
Ordered List
Nested List
Description List
Chapter Four: Table
Table
Table header, Caption, Footer
Table rowspan and colspan
Chapter Five: Form
Form
Form action attribute and submit button
Form Data List
Fieldset and Legend
Form Select input Type and Multiple Selection
Form Input TextArea
get and post method email and checkbox
All Input Types
Chapter Six: Validation, Linking, Meta data & others
Input Type Validation
Internal and External Linking
Html Meta Data
Special Symbols
Chapter Seven: Multimedia Elements
Picture Element
Video Element
Audio Element
Chapter Eight: Page Structure
Html div and hr
Html Section and Nav
Footer and Meter
Html Figure and Detail Article
CSS
Chapter One: Introduction and CSS Location
Introduction to CSS
Inline Style Sheet
Internal Style Sheet
Extenal Style Sheet
Chapter Two: CSS Selector and Comment
CSS Selector
Grouping Selector
CSS Comment
Chapter Three: Color and Background
CSS Color Part 1
CSS Color Part 2
Background
Chapter Four: Border, Margin and Padding
CSS Border Part 1
CSS Border Part 2
CSS Margin
Margin inherit auto
CSS Padding
Text Attributes
Text Attributes Part 2
CSS Font
Link Decoration
CSS List Decoration
Chapter Five: CSS Table
Table Part 1
Table Part 2
Chapter Six: CSS Display
CSS Display Property
Width and Max-width
Position Property
Overflow Property
CSS Float
CSS Clear Property
Clearfix Property
Navigation Menu Part 1
Navigation Menu Part 2
Chapter Seven: Pseudo Class and Selector attribute
CSS Combinator
Pseudo Class Part 1
Pseudo Class Part 2
Pseudo Element
CSS Opacity
CSS Attribute Selector Part 1
CSS Attribute Selector Part 2
Chapter Eight: CSS Form
CSS Form Part 1
CSS Form Part 2
Chapter Nine: Decoration of Border and Shadow
Rounded Border
Border Image
Linear Gredient Part 1
Linear Gredient Part 2
Redial Grediant
Text Shadow
Box Shadow
Chapter Ten: Responsibe Page and Media Query
Responsive Page Part 1
Responsive Page Part 2
Responsive Page Part 3
Media Query Part 1
Media Query Part 2
Media Query Part 3
Sample Project
JAVASCRIPT
Chapter One: Introduction
Introduction to Javascript
Html Element Status
Javascript Location
Javascript Output Methods
Javascript Comment
Javascript Statement
White Space and Block
Line Break in a String and Variable
Chapter Two: Basics of Javascript
Data Type String
Data Type Number Boolean and Array
Data Type Object, Undefined and Null
Primitive Types and Complex Data
Operator Arithmetic Operator
Assignment and Compound Assignment Operator
Comparison Operator
Logical and Typeof Operators
Variable Scope
Chapter Three: Object and String
Javascript Object Part 1
Javascript Object Part 2 Methods
Javascript String
String Index Manipulation
String Search and SLicing
Chapter Four: Date Objects and Methods
Date Objects Part 1
Date Object Part 2
Date Object Part 3
Date Formats Part 1
Date Formats Part 2
getDate Methods
setDate Methods
Chapter Five: Math Methods and Random Numbers
Math Methods
Random Numbers
Chapter Six: Conditional and Loop Statements
Conditional Statements
Swtich Statement Javascript
For Loop
For In loop
While Loop in Javascript
what is a Do While Loop
Break, Continue and Label
Chapter Seven: TypeConversion, Bitwise Operator & Regex
Data Type Conversion
Bitwise Operator
Regex (Regular Expresion)
Chapter Eight: Form Validation
Form Validation
Form Validation Part 2
PHP
Chapter One: Introduction to PHP
Introduction PHP
Installing wampserver
Hello World
Chapter Two: Basics of PHP
Variable
Variable Scope in PHP
Echo and print
using html in php and embed php code inside html
Data Type
String in PHP
Constants
Arithmetic Operator
Assignment Operator
Comparison or Relational Operator
Increment and Decrement Operators
Logical Operator
String Operator
Chapter Three: Conditional and Loop Statement
if, if else and elseif conditional statement
Conditional Switch Statement
For Loop Part 1
For Loop Part 2
While Loop in PHP
Do While Loop
Forearch Loop
Chapter Four: Function
Function
Function Part 2
Function Parameter and Default Argument
Function Return Type
Chapter Five: Array
Array Part 1
Array Part 2
Associative Array
Associative Array and Sorting
Multi-dimensional Array in PHP
Chapter Six: Super Global Variables
Super global Variables $GLOBAL
Super global Variables $SERVER and $REQUEST
Super Global Variables $_GET and $_POST
Chapter Seven: Form and its Validation
Form Part 1
Form Part 2
Form Validation Part 1
Forms Validation Part 2
Form Validation Part 3
Chapter Eight: Date Time
Date and Time
Time Zone
String to time and Make Time
Chapter Nine: Require and Include
Include and Require
using a variables of included php file
Chapter Ten: File and File Upload
File Reading Part 1
File Reading Part 2
Writing to a File
File Upload Part 1
File Upload Part 2
Rename Uploaded File and Restrict File Size
Restrict the file type and restrict duplicate file
Chapter Eleven: Cookie and Session
Cookie Part 1
Cookie Part 2
Deleter Cookie
Session Part 1
Session Part 2
Chapter Twelve: Filtering and Error Handling
Filtering Input data Part 1
Filtering Input data Part 2
Error Handling
Customizing Error
Chapter Thirteen: Database Connectivity
Introduction to Database and phpmyadmin
Create connection
Create Database
Create Table
Insert into Table
Get the ID of last inserted Item and Insert Multiple Records
Prepared Statement
Prepared Statement with an HTML Form
Select Statement
Select Statement with an HTML Form
Delete Statement
Delete with an HTML Form
Update Statement
Update Statement with an HTML Form
DATA STRUCTURE
Chapter One: Data Structures and Algorithms
Data Structures and Algorithms
Abstract Data Types
Data Structure
Algorithm
Properties of Algorithms
Chapter Two: Algorithm Analysis Concept
Algorithm analysis
Empirical Algorithm Analysis
Theoretical Algorithm Analysis
Formal Approach to Analysis
Categories of Algorithm Analysis
Order of Magnitude
Rules to estimate Big Oh of a given function
Chapter Three: Simple Sorting and Searching Algorithms
Inroduction to Sorting and Searching
Sequential Searching (Linear)
Binary Searching
Simple Sorting Algorithms
Simple sort
Bubble sort
Selection Sort
Insertion Sort
Chapter Four: Data Structure and its applications
Data Structure and its applications
Linked List
Singly Linked List
Adding a node to the end of a singly linked list
Adding a node to the front of a singly linked list
Adding a node to the right of a specific value in a singly linked list
Adding a node to the left of a specific value in a singly linked list
Deleting a node from the front of a singly linked list
Deleting a node from the end of a singly linked list
Deleting a node of specific data of a singly linked list
Display in a forward manner in a singly linked list
Doubly linked lists
Adding a node to the end of a doubly linked list
Adding a node to the front of a doubly linked list
Adding a node to the left of a specific data in a doubly linked list
Adding a node to the right of a specific data in a doubly linked list
Deleting a node from the end of a doubly linked list
Deleting a node from the front of a doubly linked list
Deleting any node using the search data from a doubly linked list
Display the node from the doubly linked list in a forward manner
Display the node from the doubly linked list in a backward manner
Circular linked lists
Adding a node to the end of a Circular Singly linked list
Adding a node to the front of a Circular Singly linked list
Adding a node to the left of a specific data in a Circular Singly linked list
Adding a node to the right of a specific data in a Circular Singly linked list
Deleting a node from the end of a Circular Singly linked list
Deleting a node from the front of a Circular Singly linked list
Deleting any node using the search data from a Circular Singly linked list
Display the node from the Circular Singly linked list in a forward manner
Chapter Five: Queue
Abstract Data Type Queue
Array Implementation of Queue
enqueue an element
dequeue an element
display next element to be dequeued
display all elements in the queue in a forward manner
display all elements in the queue in a backward manner
Array of Structs Implementation of a queue enqueue an element
dequeue an element in an Array of Structs
display next element to be dequeued in an Array of Structs
display all elements in the queue in a forward manner in an array of structs
display all elements in the queue in a backward manner in an array of structs
Linked List Implementation of a queue
Linked List Implementation
enqueue an element from a doubly linked list
dequeue an element from a doubly linked list
display next element to be dequeued from a doubly linked list
display all elements in the queue in a forward manner in a doubly linked list
display all elements in the queue in a backward manner in a doubly linked list
Priority Queue
Demerging Queues
Merging Queues
Application of Queues
Chapter Six: Stack
Stack
Infix to Postfix Conversion
Postfix Evaluation Psuedocode
Array Implementation of a stack
push an element to the top of the stack in an Array
pop an element from the top of the stack in an array
display the content of the top element in the stack in an array
display the content of all elements in the stack forward manner in an array
display the content of all elements in the stack back manner in an array
Array of Structs Implementation of a stack
push an element to the top of the stack
pop an element from the top of the stack
display the content of the top element in the stack
display the content of all elements in the stack in a forward manner
display the content of all elements in the stack in a backward manner
Linked list Implementation of a stack
push an element to the top of the stack in a linked list
pop an element from the top of the stack using a linked list
display the content of the top element in the stack using a linked list
display the content of all elements in the stack in a forward manner in a linked list
display the content of all elements in the stack in a backward manner in a linked list
Chapter Seven: Tree
Introduction to Data structure
Tree Terminologies
Binary search tree (ordered binary tree)
Insertion of data into a BST
Traversing (Visiting) in a BST
Application of binary tree traversal
Implementation of the Preorder traversals
Implementation of the Inorder traversals
Implementation of the Postorder traversals
Searching a data in BST
Finding Minimum value in a Binary Search Tree
Finding Maximum value in a Binary Search Tree
Deleting from a BST
Chapter Eight: Graph
Graph
Directed and Undirected Graph
Sparse and dense graphs
Weighted Graph and Unweighted Graph
Breadth-first search
The algorithm works on both directed and undirected graphs
Shortest paths
Implementation of Breadth-first search
Enqueue an Item into a graph of the BFS
Dequeue an item from the graph of BFS
Check if the graph of BFS has no any element
Create a graph BFS
Traversing the graph of a breadth first search
Depth first search
pseudocode of depth-first-search algorithm
Implementation of Depth First Search Algorithm
Pushing an Item into a graph of the DFS
Popping an item from the graph of DFS
Check if the Graph of a Depth First Search is Empty
Creating a Depth First Search Graph
Traversing in a Graph of Depth First Search