Man kan använda Fisher-Yates shuffle direkt på vektorn, om det är tillåtet, och sedan plockar man som urval ut de k (4 i ditt exempel) första.
Annars använder man en vektor med index-nr som element som man Fisher-Yates blandar och använder de k första index-nr för urval i den ursprungliga vektorn.