//ll is the LinkedList
//using System.Linq
foreach(string item in ll.ToArray()){ll.AddFirst(item);ll.RemoveLast();}
//without using System.Linq
List<string> lll = new List<string>(ll);
for(int i=0;i<ll.Count;i++){ll.AddFirst(lll[i]);ll.RemoveLast();}
Node p = root, n = null;
while (p != null) {
Node tmp = p.next;
p.next = n;
n = p;
p = tmp;
}
root = n;