Google interview question

1. Hardware : Needed to write assertions to verify an object. 2.Software/Algorithms: A medium-level coding challenge involving an array of N distinct numbers and implementing a randomization function with specific constraints.