1 of 16

WHAT IS AN ALGORITHM?

2 of 16

In Terms of Multimedia an Algorithm is….

An algorithm is a well-ordered collection of unambiguous and effectively computable operations that when executed produces a result and halts in a finite amount of time [Schneider and Gersting 1995].

3 of 16

With this definition, we can identify five important characteristics of algorithms.

1. Algorithms are well-ordered.

2. Algorithms have unambiguous operations.

3. Algorithms have effectively computable operations.

4. Algorithms produce a result.

5. Algorithms halt an finite amount of time.

4 of 16

Make sure you can define “Algorithm”

  • In computers and related subjects (like mathematics, science, programming methodology etc), algorithm is defined as a sequence of instructions, an explicit, step-by-step procedure for solving a problem, often used for calculation and data processing.
  • It is formally a type of effective method in which a list of well-defined instructions for completing a task, when given an initial state, proceed through a well-defined series of successive states, eventually terminating in an end-state completing the desired work.

5 of 16

WHAT IS THE USE OF ALGORITHMS IN COMPUTERS?

  • To make a computer do anything, we have to write a computer program.
  • To write a computer program, we have to tell the computer, step by step, what we want it to do.
  • The computer then "executes" the program, following each step mechanically, to accomplish the desired goal.

6 of 16

Computers and Algorithms

  • When we are telling the computer what to do, we also get to choose how it's going to do it.
  • That's where computer Algorithms come in to picture.
  • The algorithm is the basic technique used to get the job/work done.
  • When we say that algorithms are ubiquitous, we mean… Algorithms are found everywhere. Algorithms can be used to solve many different types of problems. Algorithms are a daily occurrence.

7 of 16

Let's follow an example to get an understanding of the Algorithm concept.

  • Suppose you have to reach your home from school.
  • Then you have different options to come back; for instance you can come back by bus or by a taxi.

8 of 16

The taxi algorithm:

  1. Go to the taxi stand.
  2. Get in a taxi.
  3. Guide the driver to your home.

9 of 16

The bus algorithm:

  1. Walk to the bus stand.
  2. Board the bus.
  3. Get off at the closest bus stop to your home.
  4. Walk to your home.

10 of 16

Which algorithm is best?

  • Now each algorithm also has a different cost and a different travel time.
  • Taking a taxi, for example, is probably the fastest way, but also the most expensive.
  • Taking the bus is definitely less expensive, but a whole lot slower.
  • You choose the algorithm based on the circumstances.

11 of 16

In computer programming, there are often many different ways to accomplish any given task.

  • Each algorithm has its distinct advantages and disadvantages in different situations.
  • Sorting is one place where a lot of research has been done already, because computers spend a lot of time in sorting different lists.

12 of 16

WHAT KIND OF PROBLEMS CAN BE SOLVED BY ALGORITHMS?

  • Sorting is by no means the only computational problem* for which algorithms have been developed. Practical applications of algorithms are ubiquitous* and include the following examples:

1 -The process of computing a problem.

• Found everywhere

13 of 16

WHAT KIND OF PROBLEMS CAN BE SOLVED BY ALGORITHMS?

The Human Genome Project has the goals of identifying all the 100,000 genes in human DNA, determining the sequences of the 3 billion chemical base pairs that make up human DNA, storing this information in databases, and developing tools for data analysis. Each of these steps requires sophisticated algorithms.

14 of 16

WHAT KIND OF PROBLEMS CAN BE SOLVED BY ALGORITHMS?

  • The Internet enables people all around the world to quickly access and retrieve large amounts of information. In order to do so, clever algorithms are employed to manage and manipulate this large volume of data.
  • Examples of problems which must be solved include finding good routes on which the data will travel , and using a search engine to quickly find pages on which particular information resides .

15 of 16

WHAT KIND OF PROBLEMS CAN BE SOLVED BY ALGORITHMS?

  • In manufacturing and other commercial settings, it is often important to allocate scarce resources in the most beneficial way.
  • An oil company may wish to know where to place its wells in order to maximize its expected profit.
  • A candidate for the presidency of the United States may want to determine where to spend money buying campaign advertising in order to maximize the chances of winning an election.
  • An Internet service provider may wish to determine where to place additional resources in order to serve its customers more effectively.
  • All of these are examples of problems that can be solved using algorithms.

16 of 16

Think about it…..

  • What algorithms do you use everyday?
  • How many algorithms do you use a week?
  • Can you define “algorithm”?