SeqJoin/ogoldobina
SeqJoin/sasasagagaga
f1def joinseq(*seqs):f1def joinseq(*seqs):
2    seqs = [iter(seq) for seq in seqs]2    seqs = [iter(seq) for seq in seqs]
n3    elems = set()n3    s = set()
4    for (i, seq) in enumerate(seqs):4    for (i, seq) in enumerate(seqs):
t5        elem = next(seq, None)t5        val = next(seq, None)
6        if elem is not None:6        if val is not None:
7            elems.add((elem, i))7            s.add((val, i))
8    while elems:8    while s:
9        (m, idx) = min(elems)9        (val, i) = min(s)
10        elems.discard((m, idx))10        s.discard((val, i))
11        yield m11        yield val
12        elem = next(seqs[idx], None)12        new_val = next(seqs[i], None)
13        if elem is not None:13        if new_val is not None:
14            elems.add((elem, idx))14            s.add((new_val, i))
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op