def reverse_list_iterative(head):
    """
    Reverse a singly linked list by iterative method

    :param head: head node of given linked list
    :type head: ListNode
    :return: head node of reversed linked list
    :rtype: ListNode
    """
    curr = head
    prev = None
    while curr is not None:
        tmp = curr.next
        curr.next = prev
        prev = curr
        curr = tmp
    return prev