
Объединение циклов
Если два цикла работают с одним набором элементов, можно выполнить их объединение (jamming). Выгода здесь объясняется устранением затрат, связанных с выполнением дополнительного цикла.
Объединение циклов обычно требует, чтобы условия циклов были одинаковы. В нашем примере оба цикла выполняются от 0 до employeeCount - 1, поэтому мы можем их объединить.
Для случая employeeCount = 100 экономия времени составляет 28%(C++), 32%(PHP), 4%(Visual Basic). Объединить циклы иногда трудно. Будьте внимательны: прежде чем объединять циклы, убедитесь, что это не нарушит работу остальных частей кода.
#tips #cycles
Если два цикла работают с одним набором элементов, можно выполнить их объединение (jamming). Выгода здесь объясняется устранением затрат, связанных с выполнением дополнительного цикла.
Объединение циклов обычно требует, чтобы условия циклов были одинаковы. В нашем примере оба цикла выполняются от 0 до employeeCount - 1, поэтому мы можем их объединить.
Для случая employeeCount = 100 экономия времени составляет 28%(C++), 32%(PHP), 4%(Visual Basic). Объединить циклы иногда трудно. Будьте внимательны: прежде чем объединять циклы, убедитесь, что это не нарушит работу остальных частей кода.
#tips #cycles