Alright guys, I'm in a Data Structures I class which is proving to be impossible at some junctures. I suppose it's a right of passage to earn the degree. I know how mergesort works on Arrays, but our professor has purposely used the linked list data structure to up the difficulty. Through Google, I think I've found a great resource to help me out a bit.

http://www.chiark.greenend.org.uk/~sgtatham/algorithms/listsort.html

If you guys could help explain it in terms of C# it'd go a long way in helping me solve this problem. Thanks.