This is a java program to implement Alexander Bogomolny’s permutation algorithm. This version of program computes all possible permutations of numbers from 1 to N using Alexander Bogomolyn’s algorithm.
Here is the source code of the Java Program to Implement the Alexander Bogomolny’s UnOrdered Permutation Algorithm for Elements From 1 to N. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
package com.sanfoundry.combinatorial; import java.util.Scanner; public class AlexanderBogomolnyPermutation { static int level = -1; public static void print(int[] value, int n) { if (value.length != 0) { for (int i = 0; i < value.length; i++) { System.out.print(value[i] + " "); } System.out.println(); } } public static void visit(int[] Value, int N, int k) { level = level + 1; Value[k] = level; if (level == N) print(Value, N); else for (int i = 0; i < N; i++) if (Value[i] == 0) visit(Value, N, i); level = level - 1; Value[k] = 0; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter the size of the sequence:"); int n = sc.nextInt(); int sequence[] = new int[n]; for (int i = 0; i < n; i++) { sequence[i] = 0; } System.out.println("The permutations are: "); visit(sequence, n, 0); sc.close(); } }
Output:
$ javac AlexanderBogomolnyPermutation.java $ java AlexanderBogomolnyPermutation Enter the size of the sequence: 4 The permutations are: 1 2 3 4 1 2 4 3 1 3 2 4 1 4 2 3 1 3 4 2 1 4 3 2 2 1 3 4 2 1 4 3 3 1 2 4 4 1 2 3 3 1 4 2 4 1 3 2 2 3 1 4 2 4 1 3 3 2 1 4 4 2 1 3 3 4 1 2 4 3 1 2 2 3 4 1 2 4 3 1 3 2 4 1 4 2 3 1 3 4 2 1 4 3 2 1
Related posts:
Introduction to Liquibase Rollback
Java Program to Solve any Linear Equation in One Variable
Hướng dẫn sử dụng Lớp FilePermission trong java
Java Convenience Factory Methods for Collections
Spring 5 WebClient
Jackson Date
Guide to CountDownLatch in Java
Java Program to Find Inverse of a Matrix
Java Program to Generate All Possible Subsets with Exactly k Elements in Each Subset
Java Program to Perform Uniform Binary Search
Guide to the Synchronized Keyword in Java
Using Java Assertions
Form Validation with AngularJS and Spring MVC
Using a Spring Cloud App Starter
Guide to the Java ArrayList
Default Password Encoder in Spring Security 5
Java Program to Implement Binary Search Tree
Java Program to Implement the String Search Algorithm for Short Text Sizes
Convert Character Array to String in Java
Java Program to Check if any Graph is Possible to be Constructed for a Given Degree Sequence
Implementing a Binary Tree in Java
Working with Kotlin and JPA
Spring REST with a Zuul Proxy
Apache Commons Collections BidiMap
Tiêu chuẩn coding trong Java (Coding Standards)
Java Program to Implement Shoelace Algorithm
Daemon Threads in Java
Spring Boot - Servlet Filter
Converting Between a List and a Set in Java
Java IO vs NIO
Mệnh đề Switch-case trong java
Shuffling Collections In Java