diff --git a/Sorting/BubbleSort.java b/Sorting/BubbleSort.java new file mode 100644 index 0000000..7b907bc --- /dev/null +++ b/Sorting/BubbleSort.java @@ -0,0 +1,27 @@ +import java.util.Arrays; + +public class BubbleSortImproved { + public static void main(String[] args) { + int[] arr = {8,7,6,5,4,3,2,1}; + int[] ans = bubbleSort(arr); + System.out.println(Arrays.toString(ans)); + } + static int[] bubbleSort(int[] arr){ + int flag = 0; + int n = arr.length; + for(int i = 0;i0;j--){ + if(arr[j-1]>arr[j]){ + swap(arr,j-1,j); + } + } + } + } + + static void swap(int[] arr,int i, int j){ + int temp = arr[i]; + arr[i] = arr[j]; + arr[j]=temp; + } + +} diff --git a/Sorting/QuickSort.java b/Sorting/QuickSort.java new file mode 100644 index 0000000..f158002 --- /dev/null +++ b/Sorting/QuickSort.java @@ -0,0 +1,39 @@ +import java.util.Arrays; + +public class QuickSort { + public static void main(String[] args) { + int[] arr = {5,9,1,7,3,4,0,2}; + quicksort(arr,0,arr.length-1); + System.out.println(Arrays.toString(arr)); + } + + static void quicksort(int[] arr,int lb,int ub){ + if(lb>=ub) return; + + int start = lb; + int end = ub; + int mid = lb + (ub-lb)/2; + int pivot = arr[mid]; + + while(start<=end){ + while(arr[start]pivot){ + end--; + } + + if(start<=end){ + int temp = arr[start]; + arr[start]=arr[end]; + arr[end]=temp; + start++; + end--; + } + } + quicksort(arr,lb,end); + quicksort(arr,start,ub); + + } + +} diff --git a/Sorting/SelectionSort.java b/Sorting/SelectionSort.java new file mode 100644 index 0000000..cc7889c --- /dev/null +++ b/Sorting/SelectionSort.java @@ -0,0 +1,36 @@ +import java.util.Arrays; + +public class SelectionSort { + public static void main(String[] args) { + int[] arr = {6,5,4,3,2,1}; + selectionsort(arr); + System.out.println(Arrays.toString(arr)); + } + + + static void selectionsort(int[] arr){ + for(int i = 0;iarr[max]){ + max=i; + } + } + return max; + } + + +}