class FindKthElement {

  public ListNode find(ListNode listNode, int k) {
    validateInput(listNode, k);

    ListNode reversedList = reverseLinkedList.reverseIterative(listNode);
    ListNode result = reversedList;
    while (k > 0) {
      result = result.getNext();
      if (result == null) {
        throw new IndexOutOfBoundsException();
      }
      k--;
    }
    return result;
  }

  public  FindKthElement();

}