Sobes.tech
Junior — Middle+
59

Перенос счётчика в первую ноду списка

Условие задачи

Оптимизировать реализацию списка так, чтобы поле counter присутствовало только в головном элементе и не дублировалось в остальных узлах. Требуется изменить текущий код, где каждый ListNode хранит собственный счётчик, и обеспечить, чтобы инкремент счётчика происходил лишь при создании первой ноды.

public class ListNode<T> implements Node<T> {

    private T value;
    private ListNode<T> next;

    // хранить только в головной ноде
    private int counter;

    public ListNode(T value) {
        this.value = value;
        counter++;
    }

    public ListNode() {
    }
}