Algorithms and Codes for Dense Assignment Problems: the State of the Art