Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class NumberPermutations
- {
- static void Swap(ref int first, ref int second)
- {
- int temp = first;
- first = second;
- second = temp;
- }
- static void Permutations(int[] vector, int numbersLength, int start)
- {
- if (start == numbersLength)
- {
- Print(vector);
- }
- else
- {
- for (int i = start; i <= numbersLength; i++)
- {
- Swap(ref vector[i], ref vector[start]);
- Permutations(vector, numbersLength, start + 1);
- Swap(ref vector[i], ref vector[start]);
- }
- }
- }
- static void LoadVector(int[] vector, int vectorLenght)
- {
- for (int i = 0; i < vectorLenght; i++)
- {
- vector[i] = i + 1;
- }
- Permutations(vector, vectorLenght-1, 0);
- }
- static void Print(int[] vector)
- {
- foreach (int i in vector)
- {
- Console.Write("{0} ", i);
- }
- Console.WriteLine();
- }
- static void Main()
- {
- Console.Write("Please enter the amount of the numbers 1...N, N = ");
- int numberN = int.Parse(Console.ReadLine());
- int[] vector = new int[numberN];
- LoadVector(vector, numberN);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement