Skip to main content

Bubble Sort

1. You are given an array(arr) of integers.

2. You have to sort the given array in increasing order using bubble sort.

Input Format

An Integer n 

arr1

arr2..

n integers

Output Format

Check the sample ouput and question video.


Constraints

1 <= N <= 10000

-10^9 <= arr[i] <= 10^9

Sample Input

5

-2 

3

Sample Output

Comparing -2 and 7

Swapping -2 and 7

Comparing 4 and 7

Swapping 4 and 7

Comparing 1 and 7

Swapping 1 and 7

Comparing 3 and 7

Swapping 3 and 7

Comparing 4 and -2

Comparing 1 and 4

Swapping 1 and 4

Comparing 3 and 4

Swapping 3 and 4

Comparing 1 and -2

Comparing 3 and 1

Comparing 1 and -2

-2

1

3

4

7


Solution:

import java.io.*;
import java.util.*;

public class Main {

  public static void bubbleSort(int[] arr) {
    //write your code here
    for(int i=0;i<arr.length;i++){
        for(int j=1;j<arr.length-i;j++)
            if(isSmaller(arr,j,j-1)){
                swap(arr,j,j-1);
            }
    }
  }

  // used for swapping ith and jth elements of array
  public static void swap(int[] arr, int i, int j) {
    System.out.println("Swapping " + arr[i] + " and " + arr[j]);
    int temp = arr[i];
    arr[i] = arr[j];
    arr[j] = temp;
  }

  // return true if ith element is smaller than jth element
  public static boolean isSmaller(int[] arr, int i, int j) {
    System.out.println("Comparing " + arr[i] + " and " + arr[j]);
    if (arr[i] < arr[j]) {
      return true;
    } else {
      return false;
    }
  }

  public static void print(int[] arr) {
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
  }

  public static void main(String[] args) throws Exception {
    Scanner scn = new Scanner(System.in);
    int n = scn.nextInt();
    int[] arr = new int[n];
    for (int i = 0; i < n; i++) {
      arr[i] = scn.nextInt();
    }
    bubbleSort(arr);
    print(arr);
  }

}

Comments

Must Read:

Data Formats ( XML & JSON ) XML AND JSON | Generate XSD For Breakfast Menu

  Generate XSD For Breakfast Menu Generate XSD for the given XML document <?xml version="1.0" encoding="UTF-8"?> <breakfast_menu> <food> <name>Turfle waffles</name> <price>$5.95</price> <description>This two turfle which has 2 famous product  is with real choco and maple syrup</description> <calories>650</calories> </food> <food> <name>Strawberry Belgian Waffles</name> <price>$24.6</price> <description>Light Belgian waffles covered with strawberries and whipped cream</description> <calories>900</calories> </food> <food> <name>Berry-Berry Belgian Waffles</name> <price>$4.78</price> <description>Light Belgian waffles covered with an assortment of fresh berries and whipped cream</description> <calories>400</calories> </food> <food> <name>Fried Toast</name> <pr...

Subscribe to Get's Answer by Email