Задать вопрос
Ответы пользователя по тегу Django
  • Как правильно сгруппировать данные по временным границам?

    kumaxim
    @kumaxim
    Web-программист
    Для начала я буду отталкиваться от того, что это у Вас какой-то журнал и все записи идут по возрастанию времени. Для простоты я полагаю что эти записи у Вас лежат в массиве.

    Решение в лоб - организовать перебор. По шагам:
    1. Берем элемент N
    2. Проверяем существует ли элемент N-1(обработка первого элемента)
    3. Берете dataTime элемента N и вычитайте из него 15 минут(переменная time_minus)
    4. Берем dataTime элемента N-1 и сравниваем с time_minus. Если он меньше - ставите некий флаг, пусть semi_result_minus, в истину
    5. Проверяем существует ли элемент N+1(обработка последнего элемента)
    6. Берете dataTime элемента N и прибавляйте к нему 15 минут(переменная time_plus)
    7. Берем dataTime элемента N+1 и сравниваем с time_plus. Если он меньше - ставите некий флаг, пусть semi_result_plus, в истину
    8. Если обе переменные semi_result_minus и semi_result_plus имеют истинное значение - текущий элемент N соответствует Вашим критериям, значит включайте его в результат


    Вам отдельно нужно будет подумать как быть, если Вы работайте с первым и последним элементом, т.к. в этом случае одна из Ваших semi_ переменных точно будет иметь ложное значение.
    Ответ написан
    Комментировать