This is a java program to generate a random partitioning of a set of characters or numbers in to two sets. Randomly generate an index less than the total number of elements in the set.
Here is the source code of the Java Program to Generate Random Partition out of a Given Set of Numbers or Characters. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to perform partitioning at random index and generate two sets for given set of numbers or characters
import java.util.Random;
import java.util.Scanner;
public class Random_Partition
{
public static void main(String args[])
{
Random random = new Random();
Scanner sc = new Scanner(System.in);
int noc = random.nextInt(2);
// if noc is equal to 1 generate numbers
if (noc == 1)
{
int N = 10;
int[] sequence = new int[N];
System.out.print("The Original set of numbers are:\n ");
for (int i = 0; i < N; i++)
{
sequence[i] = Math.abs(random.nextInt(100));
System.out.print(sequence[i] + " ");
}
int partition_index = random.nextInt(11);
System.out.println("\nThe two sequemces are: ");
System.out.print("{ ");
for (int i = 0; i < N; i++)
{
if (i == partition_index)
System.out.print(" } and { ");
System.out.print(sequence[i] + " ");
}
System.out.print("}");
System.out
.println("\nPartitioning around index " + partition_index);
}
// else generate characters
else
{
int N = 10;
char[] sequence = new char[N];
System.out.print("The Original set of characters are:\n ");
for (int i = 0; i < N; i++)
{
sequence[i] = (char) Math.abs(random.nextInt(123 - 97) + 97);
System.out.print(sequence[i] + " ");
}
int partition_index = random.nextInt(11);
System.out.println("\nThe two sequences are: ");
System.out.print("{ ");
for (int i = 0; i < N; i++)
{
if (i == partition_index)
System.out.print(" } and { ");
System.out.print(sequence[i] + " ");
}
System.out.print("}");
System.out
.println("\nPartitioning around index " + partition_index);
}
sc.close();
}
}
Output:
$ javac Random_Partition.java
$ java Random_Partition
The Original set of numbers are:
70 13 10 36 78 98 18 64 60 84
The two sequences are:
{ 70 13 10 36 78 98 18 64 } and { 60 84 }
Partitioning around index 8
The Original set of characters are:
n p r e m z y o x p
The two sequences are:
{ n p r e m z } and { y o x p }
Partitioning around index 6
Related posts:
Spring 5 WebClient
Java InputStream to Byte Array and ByteBuffer
Call Methods at Runtime Using Java Reflection
Deploy a Spring Boot App to Azure
Java Program to Implement Hopcroft Algorithm
Java Program to Implement Coppersmith Freivald’s Algorithm
Guide to Mustache with Spring Boot
The Registration Process With Spring Security
Check If Two Lists are Equal in Java
An Example of Load Balancing with Zuul and Eureka
Create a Custom Auto-Configuration with Spring Boot
REST Pagination in Spring
Java Program to Implement Sieve Of Atkin
A Guide to Queries in Spring Data MongoDB
Checked and Unchecked Exceptions in Java
Java Program to Implement Pairing Heap
Spring Boot Configuration with Jasypt
Java Program to Implement Trie
New Features in Java 12
Java toString() Method
Login For a Spring Web App – Error Handling and Localization
Exploring the Spring Boot TestRestTemplate
Guide to the Volatile Keyword in Java
Java Program to Find the Connected Components of an UnDirected Graph
Spring Boot - Cloud Configuration Client
JUnit 5 @Test Annotation
Java Program to Generate All Subsets of a Given Set in the Gray Code Order
A Guide to Spring Boot Admin
Guide to CopyOnWriteArrayList
Predicate trong Java 8
Write/Read cookies using HTTP and Read a file from the internet
Spring Security OAuth Login with WebFlux