Implement in C Programming 10.11.1: LAB: All permutations of names Given a main program that reads the number of one word names followed by the list of names, complete the recursive function PrintAllPermutations() to list all ways people can line up for a photo (all permutations of an array of strings). Function PrintAllPermutations() takes 4 parameters: an array of a permutation of names, the number of names in the array of the permutation of names, an array of available names, and the number of names in the array of available names. Function PrintAllPermutations() then creates and outputs all possible orderings of those names separated by a comma, one ordering per line. When the input is: 3 Julia Lucas Mia then the output is (must match the below ordering): Julia, Lucas, Mia Julia, Mia, Lucas Lucas, Julia, Mia Lucas, Mia, Julia Mia, Julia, Lucas Mia, Lucas, Julia (please add commas in code please) #include #include #include const int MAX_NAME_SIZE = 50;  // TODO: Write function to create and output all permutations of the list of names. void PrintAllPermutations(char **permList, int permSize, char **nameList, int nameSize) { } int main(void) {    int size;    int i = 0;    char name[MAX_NAME_SIZE];    scanf("%d", &size);    char *nameList[size];    char *permList[size];    for (i = 0; i < size; ++i) {       nameList[i] = (char *)malloc(MAX_NAME_SIZE);       scanf("%s", name);       strcpy(nameList[i], name);    }    PrintAllPermutations(permList, 0, nameList, size);        // Free dynamically allocated memory    for (i = 0; i < size; ++i) {       free(nameList[i]);    }        return 0; }

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 8SA
icon
Related questions
Question
100%

Implement in C Programming

10.11.1: LAB: All permutations of names

Given a main program that reads the number of one word names followed by the list of names, complete the recursive function PrintAllPermutations() to list all ways people can line up for a photo (all permutations of an array of strings). Function PrintAllPermutations() takes 4 parameters: an array of a permutation of names, the number of names in the array of the permutation of names, an array of available names, and the number of names in the array of available names. Function PrintAllPermutations() then creates and outputs all possible orderings of those names separated by a comma, one ordering per line.

When the input is:

3 Julia Lucas Mia

then the output is (must match the below ordering):

Julia, Lucas, Mia

Julia, Mia, Lucas

Lucas, Julia, Mia

Lucas, Mia, Julia

Mia, Julia, Lucas

Mia, Lucas, Julia

(please add commas in code please)

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

const int MAX_NAME_SIZE = 50; 

// TODO: Write function to create and output all permutations of the list of names.
void PrintAllPermutations(char **permList, int permSize, char **nameList, int nameSize) {
}

int main(void) {
   int size;
   int i = 0;
   char name[MAX_NAME_SIZE];
   scanf("%d", &size);
   char *nameList[size];
   char *permList[size];

   for (i = 0; i < size; ++i) {
      nameList[i] = (char *)malloc(MAX_NAME_SIZE);
      scanf("%s", name);
      strcpy(nameList[i], name);
   }

   PrintAllPermutations(permList, 0, nameList, size);
   
   // Free dynamically allocated memory
   for (i = 0; i < size; ++i) {
      free(nameList[i]);
   }
   
   return 0;
}

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 4 images

Blurred answer
Knowledge Booster
Randomized Select Algorithm
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning