DSA
1. Bubble Sort
Java code:
package az.etibarli.oop;
import java.util.Arrays;
public class Main2 {
public static void main(String[] args) {
int[] arr = {7, 1, 2, 3, 4, 5, 6};
}
public static void bubbleSort1(int[] arr) {
boolean flag = true;
int n = arr.length;
for (int i = 0; i < n - 1 && flag; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
flag = false;
// swap operation
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
flag = !flag;
}
}
public static void bubbleSort2(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
boolean swapped = false;
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
swapped = true;
}
}
if (!swapped) {
break;
}
}
}
}
Python code:
def bubble_sort(arr):
n = len(arr)
for i in range(n - 1):
swapped = False
for j in range(n - i - 1):
if arr[j] > arr[j + 1]:
swapped = True
arr[j], arr[j + 1] = arr[j + 1], arr[j]
if not swapped:
break
arr = [5, 4, 3, 2, 1]
print(arr)
bubble_sort(arr)
print(arr)
2. Selection Sort
Java code:
public static void selectionSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
int min = arr[i];
int index = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < min) {
min = arr[j];
index = j;
}
}
// swap operation
if (arr[i] != min) {
int temp = arr[i];
arr[i] = min;
arr[index] = temp;
}
}
}
Python code:
def selection_sort(arr):
n = len(arr)
for i in range(n - 1):
index = i
for j in range(i + 1, n):
if arr[j] < arr[index]:
index = j
arr[i], arr[index] = arr[index], arr[i]
Комментарии
Отправить комментарий