
package org.code2care.java.sorting.algo;
import java.util.Arrays;
/**
* BubbleSort Example in Java
*
* Author: Code2care.org
* Date: 28 April 2023
* Version: v 1.0
*
*/
public class BubbleSortJavaExample {
public static void main(String[] args) {
//Unsorted Array
int[] unsortedArray = {4, 99, 2, 11, 34, 67, 54, 12, 45, 245, 234, 12, 200};
BubbleSortJavaExample bubbleSort = new BubbleSortJavaExample();
//Note: new array or Arrays.toString is not needed - added just for clarity
int[] sortedArray = bubbleSort.bubbleSortAlgorithm(unsortedArray);
System.out.println(Arrays.toString(sortedArray));
}
/**
*
* @param arrayOfNumbers: unsorted array as provided to sort
* @return: sorted array using bubble sort
*/
public int[] bubbleSortAlgorithm(int[] arrayOfNumbers) {
int arrayLength = arrayOfNumbers.length;
int tempVariable = 0;
for (int outerIndex = 0; outerIndex < arrayLength - 1; outerIndex++) {
for (int innerIndex = 0; innerIndex < arrayLength - outerIndex - 1; innerIndex++) {
int elementN = arrayOfNumbers[innerIndex];
int elementNPlus1 = arrayOfNumbers[innerIndex + 1];
if (elementN > elementNPlus1) {
tempVariable = arrayOfNumbers[innerIndex];
arrayOfNumbers[innerIndex] = arrayOfNumbers[innerIndex + 1];
arrayOfNumbers[innerIndex + 1] = tempVariable;
}
}
}
return arrayOfNumbers;
}
}
Output:
Complexity | Notation |
---|---|
Time complexity (worst-case) | O(n^2) |
Time complexity (average-case) | O(n^2) |
Time complexity (best-case) | O(n) |
Space complexity | O(1) |
Have Questions? Post them here!
- Create a Zip file using Java Code programmatically
- Eclipse : A java Runtime Environment (JRE) or Java Development kit (JDK) must be available
- How to Sort a LinkedList in Java
- Loading class com.mysql.jdbc.Driver. This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver
- How to declare and initialize Array in Java Programming
- [Fix] java: integer number too large compilation error
- Java JDBC Connection with MySQL Driver in VS Code + Troubleshooting
- Reading .xls and .xlsx Excel file using Apache POI Java Library
- IntelliJ: Error: Could not find or load main class, java.lang.ClassNotFoundException
- How to get Client IP address using Java Code Example
- Truncate table using Java JDBC Example
- Struts 2 : There is no Action mapped for namespace [/] and action name [form] associated with context path [/proj]
- How to get file path in Idea IntelliJ IDE
- Java Generics explained with simple definition and examples
- Java SE 8 Update 301 available with various bug fixes and security improvements
- Java: Collect Stream as ArrayList or LinkedList
- Java JDBC Connection with PostgreSQL Driver Example
- How to check if Java main thread is alive
- How to fix Java nio NoSuchFileException wile reading a file
- Java 8+ get Day of the Week Examples with LocalDateTime, DateTime, ZonalDateTime and Instant classes
- Ways to Convert Integer or int to Long in Java
- [Java] How to throws Exception using Functional Interface and Lambda code
- [Fix] Spring Boot: mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
- Java: The value of the local variable string is not used
- Java JDBC: Insert Java 8 LocalDate and Time using PreparedStatement
- Mac - How to Install VirtualBox - MacOS
- Syntax error, parameterized types are only available if source level is 1.5 or greater [Java] - Eclipse
- How to change the default location of Mac Screenshot - MacOS
- Error: Unable to access jarfile jarFileName.jar file [Windows] - Java
- How to save a file as csv in Windows Notepad? - Microsoft
- Background task activation is spurious error - Windows 10, Office 2016, Office 365 - HowTos
- Calculate discount amount python code - Python
- How to add Widgets to MacBook Desktop - HowTos