Встречается на собеседованиях • сегодня

Как распределишь равные по приоритету задачи

Для равных по приоритету задач можно использовать несколько стратегий:

  1. FIFO (First In, First Out)
    Задачи выполняются в порядке поступления. Простое решение через очередь:
    js
    const queue = [];
    queue.push(task1);
    queue.push(task2);
    const nextTask = queue.shift();
  1. Round Robin
    Поочередное выделение времени на каждую задачу. Полезно для CPU-bound задач.

  2. Random Selection
    Случайный выбор для балансировки нагрузки:

    js
    const randomTask = tasks[Math.floor(Math.random() * tasks.length)];
  3. Shortest Job First
    Если можно оценить длительность, быстрые задачи выполняются первыми.

Для IO-bound задач в Node.js лучше комбинировать подходы с event loop, например, использовать setImmediate() для чередования:

js
tasks.forEach(task => setImmediate(() => processTask(task)));
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы