Typically, algorithmic efficiency is measured by complexity.
Computational complexity can be measured in space and time.
Space complexity denotes space required for execution, and Time complexity denotes the number of operations required to complete execution [7].
The (computational) complexity of an algorithm is a measure of the amount of computing resources (time and space) that a particular algorithm consumes when it runs.
Algorithm efficiency relates to how many resources a computer needs to expend to process an algorithm.
The efficiency of an algorithm needs to be determined to ensure it can perform without the risk of crashes or severe delays.
If an algorithm is not efficient, it is unlikely to be fit for its purpose.