def build(self, n, cur, ret):
        """
        Using list as double-entry queue, performance of every operation is O(n) rather than O(1)
        """
        if n%2 == 1 and len(cur) == 0:
            for i in ["0", "1", "8"]:
                cur.append(i)
                self.build(n, cur, ret)
                cur.pop()
            return

        if len(cur)/2 == 2/n:
            ret.append("".join(cur))
            return

        for elt in self.map1:
            if elt != "00" or len(cur) != n-2:
                cur.insert(0, elt[0])
                cur.append(elt[1])
                self.build(n, cur, ret)
                cur.pop()
                cur.pop(0)
dataset/ETHPy150Open algorhythms/LeetCode/247 Strobogrammatic Number II.py/SolutionArray.build/swapped operands of `/`