public double Calculate(double x) { if (IsEmpty) { throw new Exception("Empty list!"); } double result = 0; MyLinkedListNode tmp = First; while (tmp != null) { result += tmp.A * Math.Pow(x, tmp.I); tmp = tmp.next; } return(result); }
// Печать списка public void Print(string sep = " ", string end = "\n") { if (IsEmpty) { Console.WriteLine("This list is empty."); return; } MyLinkedListNode tmp = beg; while (tmp != this.end) { Console.Write(tmp.ToString() + sep); tmp = tmp.next; } Console.Write(tmp.ToString() + end); }
// Добавление нового значения перед каким-либо элементом public void AddBefore(MyLinkedListNode existingNode, int i, int a) { AddBefore(existingNode, new MyLinkedListNode(i, a)); }
// Добавление нового значения после какого-либо элемента public void AddAfter(MyLinkedListNode existingNode, int i, int a) { AddAfter(existingNode, new MyLinkedListNode(i, a)); }
// Добавление нового значения перед каким-либо элементом public void AddBefore(MyLinkedListNode <T> existingNode, T value) { AddBefore(existingNode, new MyLinkedListNode <T>(value)); }
// Добавление нового значения после какого-либо элемента public void AddAfter(MyLinkedListNode <T> existingNode, T value) { AddAfter(existingNode, new MyLinkedListNode <T>(value)); }