随机打乱一个数组

code

#include <bits/stdc++.h>
using namespace std;

void knuth_shuffle(int *arr, int n)
{
        for (int i = n - 1; i > 1; i--)
                swap(arr[i], arr[rand()%(i-1)]);
        swap(arr[1], arr[0]);
}


int main()
{
        int arr[256];
        int n;
        cin >> n;
        for (int i = 0; i < n; i++)
                cin >> arr[i];

        knuth_shuffle(arr, n);

        for (int i = 0; i < n; i++)
                cout << arr[i] << " ";
        cout << endl;

        return 0;
}

相关文章:

  • 2021-07-21
  • 2021-10-06
  • 2022-12-23
  • 2022-12-23
  • 2021-10-15
  • 2021-05-23
  • 2021-11-10
  • 2022-02-22
猜你喜欢
  • 2021-11-17
  • 2022-12-23
  • 2021-05-16
  • 2022-01-12
  • 2022-12-23
相关资源
相似解决方案