[Data Structure/C++] Bubble Sort 구현

Bubble Sort 구현

#include <iostream>

void swap(int& a, int& b) {
	int tmp = a;
	a = b;
	b = tmp;
}

void bubbleSort(int arr[], int n) {
	bool swapped;

	for (int i = 0; i < n - 1; i++) {
		swapped = false;

		for (int j = 0; j < n - i - 1; j++) {
			if (arr[j] > arr[j + 1]) {
				//
				/*int tmp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = tmp;*/
				//
				swap(arr[j], arr[j + 1]);
				swapped = true;
			}
		}

		if (!swapped) {
			break;
		 }
	}
}

int main() {
	int arr[] = { 64, 34, 25, 12, 22, 11, 90 };
	int n = sizeof(arr) / sizeof(arr[0]);

	bubbleSort(arr, n);

	std::cout << "Sorted array: ";
	for (int i = 0; i < n; i++) {
		std::cout << arr[i] << " ";
	}
	std::cout << std::endl;

	return 0;
}