private ListNode findMid(ListNode head){
    	ListNode oneStep = head;
    	ListNode twoStep = head;
    	
    	while(oneStep.next != null && twoStep.next != null && twoStep.next.next != null){
    		twoStep = twoStep.next;
    		
    		if(twoStep == null){
    			break;
    		}
    		
    		twoStep = twoStep.next;
    		oneStep = oneStep.next;
    	}
    	return oneStep;
    }