Question: Write a C++ function is_perm which determines if a given array of n integers is a permutation of {0..n-1}. Write a function which takes a

  1. Write a C++ function is_perm which determines if a given array of n integers is a permutation of {0..n-1}.
  2. Write a function which takes a permutation as an array of n integers and constructs its inverse (also as an array). Your function will allocate storage for the inverse array and returns it as an integer pointer. If the array it receives is not a permutation of {0..n-1}, it returns nullptr instead.

Templates given below.

bool is_perm(int a[], int n) {

}

int * perm2inverse(int a[], int n) {

if(!is_perm(a, n)) // to get you started...

return nullptr;

// otherwise, a[] is a permutation of 0..n-1; allocate and populate its

// inverse array (and return it)

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!