public class LInkedLlist<T>
public LInkedLlist(T data)
this.head = new Node<T>(data);
public void addLast(T data)
this.tail.next = new Node<T>(data);
Node<T> node = this.head;
System.Console.Write($"{node.data} ");
System.Console.WriteLine();
public Node<T> getKthItemToLast(int k)
Node<T> node = this.head;
public static void Main()
LInkedLlist<int> list = new LInkedLlist<int>(new Random().Next(N));
for (int i = 0; i < N - 1; i++) {
list.addLast(new Random().Next(N));
System.Threading.Thread.Sleep(1);
int k = new Random().Next(N);
System.Console.WriteLine($"{k}th to the last : {list.getKthItemToLast(k).data}");