public void Push(string k) { if (Valores.Count == 3) { throw new InvalidOperationException("Cannot push value into a 3 Valores node"); } if (Valores.Count == 0) { Valores.Add(k); } else { string left = " "; for (int x = 0; x < Valores.Count; x++) { if (left.CompareTo(k) < 0 && k.CompareTo(Valores[x]) < 0) { Valores.Insert(x, k); return; } else { left = Valores[x]; } } Valores.Add(k); } }