How to generate an array of 256 distinct numbers

前端 未结 4 606
遇见更好的自我
遇见更好的自我 2021-01-27 03:34

I have this:

#include     
using namespace std;   
int main()
{
    int a[256];
    int b;
    int k;
    for (int i = 0; i < 256; i ++){
             


        
4条回答
  •  渐次进展
    2021-01-27 04:03

    You could try something like this:

    int main()
    {
        std::vector available(256);
        int a[256];
    
        for (int i = 0; i < 256; ++i)
            available.push_back(i);
    
        for (int i = 0; i < 256; ++i)
        {
            int idx = rand() % available.size();
            a[i] = available[idx];
            available.erase(available.begin()+idx);
        }
    
        // use a[] as needed...
    
        return 0;
    }
    

提交回复
热议问题