
- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Shuffle Array Contents
This algorithm will take an array and shuffle the contents of the array. It will generate a random permutation of the array elements.
To solve this problem, we will swap elements starting from the last index to randomly generated an index in the array.
Input and Output
Input: An array of integers: {1, 2, 3, 4, 5, 6, 7, 8} Output: Shuffle of array contents: 3 4 7 2 6 1 5 8 (Output may differ for next run)
Algorithm
randomArr(array, n)
Input: The array, number of elements.
Output: Shuffle the contents of the array.
Begin for i := n – 1 down to 1, do j := random number from 0 to i swap arr[i] and arr[j] done End
Example
#include <iostream> #include<cstdlib> #include <ctime> using namespace std; void display(int array[], int n) { for (int i = 0; i < n; i++) cout << array[i] << " "; } void randomArr ( int arr[], int n ) { //generate random array element srand (time(NULL)); //use time to get different seed value to start for (int i = n-1; i > 0; i--) { int j = rand() % (i+1); //randomly choose an index from 0 to i swap(arr[i], arr[j]); //swap current element with element placed in jth location } } int main() { int arr[] = {1, 2, 3, 4, 5, 6, 7, 8}; int n = 8; randomArr(arr, n); display(arr, n); }
Output
4 7 8 2 6 3 5 1
- Related Questions & Answers
- Shuffle an Array in Python
- How to randomize (shuffle) a JavaScript array?
- How to shuffle an array in Java?
- Shuffle an Array using STL in C++
- Java Program to shuffle an array using list
- how to shuffle a 2D array in java correctly?
- Checking the intensity of shuffle of an array - JavaScript
- How to randomize and shuffle array of numbers in Java?
- shuffle() function in PHP
- Alternative shuffle in JavaScript
- jQuery contents()
- How to shuffle an array in a random manner in JavaScript?
- Shuffle vs random_shuffle in C++
- How to print the contents of array horizontally using C#?
- How to sort by the difference in array contents in MongoDB?
Advertisements