---
title: "Significant traits of a good algorithm"
subject: "Data Structure and Algorithm"
chapter: 9
key: "semester_4/data_structure_and_algorithm:good-algorithm-traits"
source: https://www.bctengineer.com/q/semester_4/data_structure_and_algorithm/good-algorithm-traits
site: BCT Engineering
---

# Significant traits of a good algorithm

Data Structure and Algorithm · Chapter 9: Growth Functions

- Asked in: 2071 Bhadra, 2 marks
- Video: [1.2 Characteristics of Algorithm](https://www.youtube.com/watch?v=FbYzBWdhMb0) — Abdul Bari
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_4/data_structure_and_algorithm/good-algorithm-traits
- Whole chapter: https://www.bctengineer.com/md/semester_4/data_structure_and_algorithm/chapter-9

## Question

What are the significant traits of good algorithm?

## Short answer

Good algorithms are correct, finite, definite, effective, handle inputs and produce outputs, and are efficient (low time and space). They should also be general, simple, and readable.

## Answer

Significant traits of a good algorithm:
1. **Correctness:** gives the right output for every valid input.
2. **Finiteness:** terminates after a finite number of steps.
3. **Definiteness:** every step is precise and unambiguous.
4. **Input and output:** zero or more well-defined inputs and at least one output.
5. **Effectiveness:** each step is basic enough to be carried out exactly.
6. **Efficiency:** uses little time (low time complexity) and memory (low space complexity).
7. **Generality:** works for a whole class of inputs, not one case.
8. **Simplicity and readability:** easy to understand, modular and easy to modify.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. What does finiteness require?
   A. It uses finite memory only
   B. It has finite inputs only
   C. It has exactly ten steps
   D. The algorithm terminates after a finite number of steps
   Answer: D. Otherwise it never gives a result. (Key point: Finiteness)

2. How many outputs must an algorithm produce?
   A. At least one
   B. Exactly zero
   C. Exactly two
   D. Any number including none, and zero inputs
   Answer: A. Inputs may be zero or more, outputs at least one. (Key point: Output requirement)

3. What does definiteness mean?
   A. The algorithm is fast
   B. Every step is precise and unambiguous
   C. The algorithm is short
   D. The algorithm is recursive
   Answer: B. Each instruction must be clear. (Key point: Definiteness)
