Answer:
I believe the answer would be D
Yes :) I totally agree with the person above me ^
Answer:
An algorithm is a specific procedure for solving a well-defined computational problem. ... It requires an understanding of the alternatives available for solving a computational problem, including the hardware, networking, programming language, and performance constraints that accompany any particular solution.
All of them are available