deno.land / x / masx200_leetcode_test@10.6.5 / peeking-iterator / index.ts
123456789101112131415161718192021222324252627282930export interface NumberIterator { hasNext(): boolean; next(): number;}interface PeekingIterator { peek(): number | null;
next(): number | null;
hasNext(): boolean;}export default PeekingIterator;function PeekingIterator(iterator: NumberIterator): PeekingIterator { let nextElement: null | number = iterator.next(); function peek(): number | null { return nextElement; }
function next(): number | null { const ret = nextElement; nextElement = iterator.hasNext() ? iterator.next() : null; return ret; }
function hasNext(): boolean { return nextElement != null; } return { peek, next, hasNext };}
Version Info