Принцип разбиения математических задач на мелкие подзадачи заключается в том, чтобы разложить задачу на две или более сходных, но более простых подзадач, решить их поочерёдно и скомпоновать их решения. 1
После разделения одной задачи на подзадачи, алгоритм обычно делит их на ещё более мелкие под-подзадачи и так далее. 3 Он продолжает это делать, пока не дойдёт до точки, где в рекурсии уже нет необходимости. 3
Например, чтобы отсортировать заданный список из n натуральных чисел, необходимо разбить его на два списка примерно из n/2 чисел каждый, отсортировать каждый из них по очереди и скомпоновать оба результата соответствующим образом, чтобы получить отсортированную версию данного списка. 1