# Algorithms: Question Set – 07

#### What is an algorithm design technique?

The term “algorithm design technique” refers to a generic strategy for algorithmically addressing issues that can be applied to a wide variety of challenges originating from numerous subfields of computer science.

#### What is pseudocode?

- An algorithm can be specified using pseudocode, which is a hybrid notation that combines natural language phrases with computer language components.
- Pseudocodes are more precise than natural languages, and the use of pseudocodes typically results in more condensed explanations of algorithmic processes.

#### What are the steps involved in the analysis framework?

The various steps are as follows:

- Measuring the input‘s size
- Units for measuring running time
- Orders of growth
- Worst-case, best-case and average-case efficiencies

#### What is the basic operation of an algorithm and how is it identified?

- The operation of the algorithm that is responsible for the greatest portion of the overall execution time is referred to as the basic operation of the algorithm.
- Because it is typically the operation in the algorithm’s innermost loop that requires the highest amount of time, it is straightforward to spot.

#### What is worst-case efficiency?

- The efficiency of an algorithm is measured by how well it performs with its worst-case input of size n.
- The worst-case input of size n is defined as an input or input of size n for which the algorithm takes the longest to complete when compared to the other potential inputs of that size.

#### What is best-case efficiency?

- The efficiency of an algorithm is measured by how well it performs with its “best-case” input of size n.
- A “best-case” input is an input (or set of inputs) for which the algorithm completes its task the quickest out of all the potential inputs of that size.

#### What is amortized efficiency?

- In certain circumstances, a single operation may incur a high cost; nonetheless, the total time required to complete the entire sequence of n such procedures will always be much less than the worst-case efficiency of the single operation multiplied by the number of operations.
- This type of efficiency is known as amortised efficiency.

#### What is algorithm visualization?

- Studying algorithms can be done through the process of algorithm visualisation.
- It is described as the process of utilising visuals to convey some information about algorithms that are deemed to be beneficial.
- This information can be shown in the form of a visual illustration of the operation of the algorithm, of its performance on various types of inputs, or of its execution speed in comparison to that of other algorithms designed to solve the same problem.

#### What are the two variations of algorithm visualization?

The two most common approaches to algorithm visualisation:

- Static algorithm: It does this by displaying the progression of the algorithm through a series of still images.
- Dynamic algorithm: The animation of algorithms provides a movie-like depiction of the algorithm’s activities in a continuous loop.