1. A method of recovery of bits in a flash memory device, the method performed by a controller of the flash memory device, the method comprising: at the controller of the flash memory device: determining N bits of data for recovery, wherein the N bits of data comprise a subset of bits of data read in a read operation and N is an integer greater than 1; selecting, based at least in part on one or more aspects of the flash memory device, a plurality of potential bit patterns of the N bits, wherein a count of plurality of potential bit patterns is less than 2 N ; and after selecting the plurality of potential bit patterns, iteratively determining whether a potential bit pattern of the plurality of potential bit patterns enables recovery of at least one or more of the N bits.