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

Какую самую интересную задачу решал

Разрабатывал интерактивную карту с маршрутами для логистического сервиса. Основная сложность — оптимизация отрисовки тысяч маркеров и путей в реальном времени без лагов.

Использовал:

  • Canvas вместо DOM для рендеринга
  • Web Workers для тяжелых вычислений
  • QuadTree для пространственного индексирования маркеров
javascript
// Упрощенный пример QuadTree
class QuadTree {
  constructor(bounds, capacity) {
    this.bounds = bounds; // {x, y, width, height}
    this.capacity = capacity;
    this.points = [];
    this.divided = false;
  }

  insert(point) {
    if (!this.bounds.contains(point)) return false;
    if (this.points.length < this.capacity) {
      this.points.push(point);
      return true;
    }
    if (!this.divided) this.subdivide();
    return (
      this.northeast.insert(point) || 
      this.northwest.insert(point) ||
      this.southeast.insert(point) || 
      this.southwest.insert(point)
    );
  }
}

Результат: 60 FPS при 10k+ маркерах.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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