-
Notifications
You must be signed in to change notification settings - Fork 1
aviasales test
whitered/aviasales_test
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Описание алгоритма. Для быстрого поиска маршрутов перелета вводится дополнительная модель - маршрут. Маршрут может быть простой - один перелет, или составной - из двух маршрутов (каждый из которых, в свою очередь, тоже может быть простым или составным). Для каждого добавленного авиарейса автоматически создается простой маршрут. Для каждого созданного маршрута выполняется поиск других маршрутов, с которыми он может быт состыкован. Поиск выполняется исходя из предположения, что время пересадки ограничено сверху (12 ч.) и, возможно, снизу (30 мин.), также ограничено максимальное количество пересадок (3). Здесь нужно в дальнейшем добавить дополнительные условия осмысленности маршрутов, например по направлению и т.п. При удалении авиарейса из базы удаляется связанный простой маршрут, при удалении любого маршрута удаляются все сложные маршруты, в которые он входил. Для избежания возможного дублирования составной маршрут должен быть сбалансированным, то есть количество пересадок в первой его части должно быть равно или больше на 1 количества пересадок во второй. Для упрощения поиска в таблице маршрутов дублируются такие поля, как время вылета и прилета, пункты отправления и назначения, а также считается общее количество пересадок и суммарная стоимость.
About
aviasales test
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published