Generuj losowe liczby „w zasięgu” w C

Muszę wygenerować losowe liczby w zakresie [0, 10], tak aby:

Wszystkie liczby występują raz.Nie uzyskuje się powtarzających się wyników.

Czy ktoś może mi wskazać, którego algorytmu użyć?