is push_str an O(1) operation?