- Trending Categories
- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

# Introduction to Analysis of Algorithms

In theoretical analysis of algorithms, it is common to estimate their complexity in the asymptotic sense, i.e., to estimate the complexity function for arbitrarily large input. The term **"analysis of algorithms"** was coined by Donald Knuth.

Algorithm analysis is an important part of computational complexity theory, which provides theoretical estimation for the required resources of an algorithm to solve a specific computational problem. Most algorithms are designed to work with inputs of arbitrary length. Analysis of algorithms is the determination of the amount of time and space resources required to execute it.

Usually, the efficiency or running time of an algorithm is stated as a function relating the input length to the number of steps, known as **time complexity**, or volume of memory, known as **space complexity**.

## In this Section We are going to cover −

- Related Articles
- Introduction to Backtracking Algorithms
- Introduction to Searching Algorithms
- Introduction to Greedy Algorithms
- Introduction to Graph Algorithms
- Introduction to Divide & Conquer Algorithms
- Introduction to Pattern Searching Algorithms
- Introduction to Algorithms for Mathematical Problems
- What are the types of process scheduling algorithms and which algorithms lead to starvation?
- Introduction to Databases
- Introduction to Backtracking
- Introduction to Iptables
- Introduction to Anime.js
- Introduction to Superphones
- Introduction to Sniffers
- Introduction to Skype