The greedy Prefer-same de Bruijn sequence construction was first presented by Eldert et al. [AIEE Transactions 77 (1958)]. As a greedy algorithm, it has one major downside: it requires an exponential amount of space to store the length 2 n de Bruijn sequence. Though de Bruijn sequences have been heavily studied over the last 60 years, finding an efficient construction for the Prefer-same de Bruijn sequence has remained a tantalizing open problem. In this paper, we unveil the underlying structure of the Prefer-same de Bruijn sequence and solve the open problem by presenting an efficient algorithm to construct it using O(n) time per bit and only O(n) space. Following a similar approach, we also present an efficient algorithm to construct the Prefer-opposite de Bruijn sequence.Prefer-1 construction 1. Seed with 0 n−1 2. Repeat until no new bit is added: Append 1 if it does not create a duplicate length n substring; otherwise append 0 if it does not create a duplicate length n substring 3. Remove the seed