public ListNode(int val=0, ListNode next=null) {
public static void Main()
ListNode node0 = new ListNode(0);
ListNode node1 = new ListNode(1);
ListNode node2 = new ListNode(2);
ListNode node3 = new ListNode(3);
ListNode node4 = new ListNode(4);
ListNode node5 = new ListNode(5);
ListNode reversed = ReorderList(node0);
Console.WriteLine("ans:");
public static void PrintList(ListNode node)
StringBuilder sb = new StringBuilder();
Console.WriteLine(sb.ToString());
public static ListNode ReorderList(ListNode node)
while(fast != null && fast.next != null)
ListNode current = second;
ListNode current1 = node.next;
ListNode current2 = prev;
while(current1 != null && current2 != null)
current2 = current2.next;
current1 = current1.next;