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:
Custom JUnit 4 Test Runners
Spring Boot - Tomcat Deployment
Count Occurrences of a Char in a String
Java Program to Find the Nearest Neighbor Using K-D Tree Search
Java Program to Implement Queue using Linked List
Java Program to Find Number of Articulation points in a Graph
Java Program to Implement Affine Cipher
Adding Shutdown Hooks for JVM Applications
Java Program to Implement Interpolation Search Algorithm
Java Map With Case-Insensitive Keys
Serverless Functions with Spring Cloud Function
Java Program to Implement Sorted Circular Doubly Linked List
Using a List of Values in a JdbcTemplate IN Clause
Java Program to Implement Ford–Fulkerson Algorithm
Spring @Primary Annotation
Java Program to Find the Minimum Element of a Rotated Sorted Array using Binary Search approach
Overview of Spring Boot Dev Tools
Java Program to Find Transpose of a Graph Matrix
Fixing 401s with CORS Preflights and Spring Security
Java Program to Implement RoleUnresolvedList API
Java Program to Implement Adjacency Matrix
Receive email using IMAP
Quick Guide on Loading Initial Data with Spring Boot
Java Program to Implement Brent Cycle Algorithm
Java Program to Implement TreeMap API
Java Program to Implement EnumMap API
Java Program to Check Whether an Undirected Graph Contains a Eulerian Path
Spring’s RequestBody and ResponseBody Annotations
HttpAsyncClient Tutorial
Java Program to Check whether Graph is Biconnected
Spring Cloud AWS – Messaging Support
Java 8 and Infinite Streams