Related Articles

# Print a case where the given sorting algorithm fails

• Last Updated : 10 May, 2021

Given an integer N, the task is to find N elements which fail the below-sorting algorithm. If none of the N elements fail, then print -1.

```loop i from 1 to n-1
loop j from i to n-1
if a[j]>a[i+1]
swap(a[i], a[j+1])```

Examples:

```Input: N = 10
Output: 10 9 8 7 6 5 4 3 2 1

Input: N = 2
Output: -1```

Approach: On solving for various cases, we can observe that only for n<=2, the given algorithm is invalid. Any value of N above that will fail on the given algorithm. A sorted array consisiting of N numbers(1, 2, 3 . . N) in reverse order cannot be sorted using this given algorithm.
Below is the implementation of the above approach:

## C++

 `// C++ program to find a case where the``// given algorithm fails` `#include ``using` `namespace` `std;` `// Function to print a case``// where the given sorting algorithm fails``void` `printCase(``int` `n)``{``    ``// only case where it fails``    ``if` `(n <= 2) {``        ``cout << -1;``        ``return``;``    ``}` `    ``for` `(``int` `i = n; i >= 1; i--)``        ``cout << i << ``" "``;``}` `// Driver Code``int` `main()``{``    ``int` `n = 3;` `    ``printCase(n);` `    ``return` `0;``}`

## Java

 `// Java program to find a case where the``// given algorithm fails` `import` `java.io.*;` `class` `GFG {``    ``// Function to print a case where``// the given sorting algorithm fails``static` `void` `printCase(``int` `n)``{``// only case where it fails``if` `(n <= ``2``) {``        ``System.out.print(-``1``);``    ``return``;``    ` `}``for` `(``int` `i = n; i >= ``1``; i--)``        ``System.out.print(i + ``" "``);``}` `// Driver Code``    ` `    ``public` `static` `void` `main (String[] args) {``        ``int` `n = ``3``;``        ``printCase(n);`  `//This code is contributed by akt_mit``    ``}``}`

## Python 3

 `# Python 3 program to find a case``# where the given algorithm fails` `# Function to print a case where``# the given sorting algorithm fails``def` `printCase(n):` `    ``# only case where it fails``    ``if` `(n <``=` `2``) :``        ``print``(``"-1"``)``        ``return` `    ``for` `i ``in` `range``(n, ``0``, ``-``1``):``        ``print``(i, end ``=` `" "``)` `# Driver Code``if` `__name__ ``=``=` `"__main__"``:``    ` `    ``n ``=` `3` `    ``printCase(n)` `# This code is contributed``# by ChitraNayal`

## C#

 `// C# program to find a case where the``// given algorithm fails``using` `System;` `class` `GFG``{``// Function to print a case where``// the given sorting algorithm fails``static` `void` `printCase(``int` `n)``{``    ``// only case where it fails``    ``if` `(n <= 2)``    ``{``        ``Console.Write(-1);``        ``return``;``    ``}` `    ``for` `(``int` `i = n; i >= 1; i--)``        ``Console.Write(i + ``" "``);``}` `// Driver Code``public` `static` `void` `Main()``{``    ``int` `n = 3;` `    ``printCase(n);``}``}` `// This code is contributed``// by Akanksha Rai`

## PHP

 `= 1; ``\$i``--)``    ``{``        ``echo` `(``\$i``);``        ``echo``(``" "``);``    ``}``}` `// Driver Code``\$n` `= 3;` `printCase(``\$n``);` `// This code is contributed``// by Shivi_Aggarwal``?>`

## Javascript

 ``
Output:
`3 2 1`

Time Complexity: O(N)
Auxiliary Space: O(1)

Attention reader! Don’t stop learning now. Get hold of all the important Comcompetitivepetitve Programming concepts with the Competitive Programming Live  course.

My Personal Notes arrow_drop_up