Workouts are generally designed based on a specified number of sets. What if instead you blocked off a certain number of minutes for each training priority within a workout and simply performed as many sets as you could manage (with appropriate weight and reps) during that timeframe?
The exact workout blueprint will depend on your goals, but for the average lifter looking to gain strength, size, and stamina, the following framework would be a general, well-rounded routine:
|Hypertrophy (size-focused work)
That's a total of 55 minutes start to finish, as long as you're honest with the time-keeping. Now, even if it you take a super-slow 5 minutes to transition from block to block, that's still only 75 minutes. How does that compare with your last few gym visits?
Throw some core work into any of the above blocks and you've got the blueprint of an adaptable, comprehensive, and compact program.