Задать вопрос
Minifets
@Minifets
Hello world!!!

Алгоритм для распределения массива на потоки?

Доброго времени суток.

Есть 2 таблицы Subject и Service, связаны many-to-many.

При выборке (или после) нужно сгруппировать subject по service, так чтобы распределение subject было примерно равным.

Пример:

Нужно из:

[
    [
        'subject_id' => 1,
        'service_ids' => [1]
    ],
    [
        'subject_id' => 2,
        'service_ids' => [1, 2]
    ]
]


Получить:
[
    [
        'service_id' => 1,
        'subject_ids' => [1]
    ],
    [
        'service_id' => 2,
        'subject_ids' => [2]
    ]
]
  • Вопрос задан
  • 170 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Stepik
    Язык программирования PHP
    1 неделя
    Далее
Решения вопроса 1
@BorisKorobkov Куратор тега PHP
Web developer
При выборке (или после) нужно сгруппировать subject по service, так чтобы распределение subject было примерно равным.

"Распределение subject" зависит от исходных данных. Алгоритмом его нельзя сделать равномернее или нет.

Нужно из:
...
'subject_id' => 2,
'service_ids' => [1, 2]
...
Получить:
...
'service_id' => 1,
'subject_ids' => [1]
...

А куда делать пара ['subject_id' => 2, 'service_id' => 1] ?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы