Iterator
public class ZigzagIterator {
Queue<Iterator<Integer>> queue = new LinkedList<>();
public ZigzagIterator(List<Integer> v1, List<Integer> v2) {
if (!v1.isEmpty()) queue.offer(v1.iterator());
if (!v2.isEmpty()) queue.offer(v2.iterator());
}
public int next() {
Iterator<Integer> curt = queue.poll();
int val = curt.next();
if (curt.hasNext()) queue.offer(curt);
return val;
}
public boolean hasNext() {
return !queue.isEmpty();
}
}Pre fill a peek element.
Last updated
Was this helpful?