public void AppendTail(T value) { var node = new SinglyLinkedNode <T>(value); if (_tail == null) { _tail = node; _head = _tail; } else { node.SetNext(_tail); _tail = node; } Count++; }
public T RemoveNext(SinglyLinkedNode <T> node) { var next = default(SinglyLinkedNode <T>); if (node.HasNext()) { next = node.GetNext(); } if (next.HasNext()) { node.SetNext(next.GetNext()); } else { throw new ArgumentException("Next is null"); } Count--; return(next.Value); }