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:
Java Program to Implement the Checksum Method for Small String Messages and Detect
Java Collections Interview Questions
File Upload with Spring MVC
Jackson JSON Views
Exploring the New Spring Cloud Gateway
Validations for Enum Types
REST Web service: HTTP Status Code và xử lý ngoại lệ RESTful web service với Jersey 2.x
Java TreeMap vs HashMap
Practical Java Examples of the Big O Notation
Introduction to Netflix Archaius with Spring Cloud
Java Program to Represent Graph Using Adjacency Matrix
Java NIO2 Path API
Java Program to Implement Stack using Linked List
Custom Error Pages with Spring MVC
Chuyển đổi từ HashMap sang ArrayList
Upload and Display Excel Files with Spring MVC
LinkedList trong java
Java – Rename or Move a File
Java Program to Represent Graph Using Incidence Matrix
Hướng dẫn sử dụng Java String, StringBuffer và StringBuilder
Java – Combine Multiple Collections
Java Program to Describe the Representation of Graph using Incidence List
Java Program to Implement Warshall Algorithm
TreeSet và sử dụng Comparable, Comparator trong java
Immutable Map Implementations in Java
Spring Boot - Thymeleaf
Removing all Nulls from a List in Java
Loại bỏ các phần tử trùng trong một ArrayList như thế nào?
Java Program to Implement Sieve Of Sundaram
Merging Two Maps with Java 8
Java Program to Implement Shunting Yard Algorithm
Spring Cloud AWS – RDS