Module 1 Flashcards
Memorization
It is a sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any legitimate input in a finite amount of time.
Algorithm
It is any well-defined computational procedure that takes some value, or set of values, as input and produces some value, or set of values, as output.
Algorithm
It is a sequence of computational steps that transform the input into the output.
Algorithm
What are the requirements of an algorithm
(FDCCE)
- Finiteness
- Definiteness
- Clearly specified input
- Clearly specified or expected output
- Effectiveness
True or False. An algorithm may only be represented in one single form, a sequence of steps.
False
(An algorithm can be represented in various forms. Recipes, processes, methods, etc.)
What are the steps involved in solving computational problems?
(PDSDCAIPD)
- Problem Definition
- Development of a Model
- Specification of an Algorithm
- Designing an Algorithm
- Checking the Correctness of an Algorithm
- Analysis of an Algorithm
- Implementation of an Algorithm
- Program Testing
- Documentation
This step states that before you start to work on a solution the developer or/and programmer must be able to understand fully the problem statement.
Problem Definition
How many elements do problem statements often have?
Three
What are the three elements of problem statements?
-The problem
- The method of solving the problem
- The purpose
It involves the definition of model objectives, conceptualization of the problem, translation into a computational model, and model testing, revision, and application.
Model Development
It is an iterative process, in which many models are derived, tested, and built upon until a model fitting the desired criteria is built.
Model Development
True or False. Subsequent modelling work may need to begin the search at a different place as the original model building began, rather than where it finished.
False
(Modelling work may need to begin at THE SAME PLACE)
All algorithms must satisfy which criteria? (Enumerate all 5)
(IODFE)
- Input
- Output
- Definiteness
- Finiteness
- Effectiveness
This algorithm criteria states that An algorithm has zero or more inputs, taken from a specified set of objects.
Input
(ZERO or more inputs)
This algorithm criteria states that Each step must be precisely defined; Each instruction is clear and unambiguous.
Definiteness
(precisely defined, clear and unambiguous)
This algorithm criteria states that The algorithm must terminate after a finite number of steps.
Finiteness
(finite number of steps)
This algorithm criteria states that An algorithm has one or more outputs, which have a specified relation to the inputs.
Output
(ONE or more outputs)
This algorithm criteria states that All operations to be performed must be sufficiently basic that they can be done exactly in finite length
Effectiveness
(finite length)
In theoretical science, the _______ of an algorithm is asserted when it is said that the algorithm is correct with respect to a specification.
Correctness
_________ correctness refers to the input-output behavior of the algorithm.
Functional
(input-output behavior)
_________ correctness requires that if an answer is returned it will be correct.
Partial
It is the determination of the amount of time and space resources required to execute it.
Analysis of algorithms
(determination of the amount of time and space)
_________ correctness requires that if an answer is returned it will be correct and that the algorithm terminates.
Total
(algorithm must also terminate)
A ___________ is a type of mathematical proof that plays a critical role in formal verification because total correctness of an algorithm depends on termination.
Termination proof
It refers to the efficiency or running time of an algorithm is stated as a function relating the input length to the number of steps.
Time Complexity
(number of steps)
It refers to the efficiency or running time of an algorithm is stated as a function relating the input length to the volume of memory.
Space Complexity
(volume of memory)
It is a series of steps that you expect will arrive at a specific solution
Algorithms
True or False. Writing a program is equal to expressing the code for the said program.
False
(Writing a program DOES NOT EQUAL expressing code)
It is the process of executing a program with the intent of finding errors.
Program Testing
(intent of finding errors)
A good test is one that has a decently low probability of finding an error.
False
(Has a HIGH probability of finding an error)
True or False. Program testing can show the absence of errors and show if errors are present
False
(program testing CANNOT show the absence of errors)
True or False. It is possible to write tests before the program.
True
For a programmer reliable ____________ is always a must.
Documentation
True or False. Successful documentation will make information easily accessible, provide a limited number of user entry points, help new users learn quickly, simplify the product and help cut support costs.
The presence of _________ helps keep track of all aspects of an application and it improves on the quality of a software product.