implementação C ++ do algoritmo de embaralhamento aleatório

algoritmo de embaralhamento aleatório é fazer com que um conjunto aleatório de dados.

#include <o iostream> 
#include <vector> 
#include <o ctime> 
#include <cstdio>
 a usar  namespace STD; 

// baralhar aleatório algoritmo 
vazio shuffle (Vector < int > & VEC) 
{ 
    int n- = vec.size ();
     IF (N - <= 0 )
         return ; 
    srand (Tempo ( 0 )); 

    para ( int i = 0 ; i <n-; i ++ ) 
    { 
        // assegurar que cada valor de bit I não está relacionada com o bit anterior i 
        int índice RAND% + I = () (N- I);
        permuta (VEC [índice], vec [i]); 
    } 
} 

Int main () 
{ 
    vector < int > vec;
    para ( int i = 1 ; i <= 10 ; i ++ ) 
    { 
        vec.push_back (i); 
    } 
    Embaralhar (VEC); 

    para (auto-lo: VEC) 
            cout <<-lo << "  " ;
    retornar  0 ; 
}

 

Acho que você gosta

Origin www.cnblogs.com/xiaokang01/p/12603618.html
Recomendado
Clasificación