ECM 1414 Introduction to Algorithms Flashcards

1
Q

[Sedgewick 2011]

A

The term algorithm is used in computer science to describe methods for solving problems that are suited for computer implementation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

[Aho, Hopcroft & Ulman 1975]

A

An algorithm is a finite sequence of instructions, each of which has a clear meaning and can be performed with a finite amount of effort in a finite length of time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

[Wikipedia]

A

An algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

[Levitin 2003]

A

An algorithm is a finite sequence of unambiguous instructions for solving a problem, i.e., for obtaining the required output for any legitimate input in a finite amount of time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Some try to classify algorithms according to the problem-solving approach they use:

A
  • Iterative Algorithms
  • Direct/Indirect Recursive Algorithms
  • Divide-and-conquer Algorithms
  • Dynamic Programming Algorithms
  • Randomised Algorithms
  • Brute-Force Algorithms
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

3 simple algorithms

A

Consecutive Integer Checking
GCD
Middle school procedure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

The need to study algorithms

A
  • Computer programs would not exist without algorithms. So even if you’re not a computer science student, you’d benefit from the study of algorithms given the ubiquity of computer programs.
  • Development of your analytical skills. Algorithms are special kind of solutions to problems: they are not answers but well-defined steps for getting answers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly