Skip to content

Commit d929e0d

Browse files
committed
first commit
0 parents  commit d929e0d

27 files changed

+562
-0
lines changed

pom.xml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
<modelVersion>4.0.0</modelVersion>
4+
<groupId>com.mycompany</groupId>
5+
<artifactId>mavenproject1</artifactId>
6+
<version>1.0-SNAPSHOT</version>
7+
<packaging>jar</packaging>
8+
<properties>
9+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
10+
<maven.compiler.source>12</maven.compiler.source>
11+
<maven.compiler.target>12</maven.compiler.target>
12+
</properties>
13+
</project>

src/main/java/BubbleSort.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
public class BubbleSort {
2+
void bubbleSort(int arr[]) {
3+
System.out.println("Bubble Sorting");
4+
System.out.print("Data Sebelum di Sorting : ");
5+
for(int x = 0; x < 5; x++)
6+
System.out.print(arr[x]+" ");
7+
int n = arr.length;
8+
for (int i = 0; i < n-1; i++)
9+
for (int j = 0; j < n-i-1; j++)
10+
if (arr[j] > arr[j+1]) {
11+
int temp = arr[j];
12+
arr[j] = arr[j+1];
13+
arr[j+1] = temp;
14+
}
15+
}
16+
17+
void printArray(int arr[]) {
18+
int n = arr.length;
19+
for (int i=0; i<n; ++i)
20+
System.out.print(arr[i] + " ");
21+
System.out.println();
22+
}
23+
24+
public static void main(String args[]) {
25+
BubbleSort ob = new BubbleSort();
26+
int arr[] = {64, 34, 15, 12, 22};
27+
ob.bubbleSort(arr);
28+
System.out.println("");
29+
System.out.print("Data Setelah di Sorting : ");
30+
ob.printArray(arr);
31+
}
32+
}

src/main/java/BucketSort.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
public class BucketSort {
2+
public void bucketSort(int[] array){
3+
int n = maxVal(array);
4+
int[] bucket = new int[n + 1];
5+
6+
for (int x = 0; x < bucket.length; x++) {
7+
bucket[x] = 0;
8+
}
9+
10+
for (int y = 0; y < array.length; y++) {
11+
bucket[array[y]]++;
12+
}
13+
14+
int outPos = 0;
15+
for (int p = 0; p < bucket.length; p++) {
16+
for (int q = 0; q < bucket[p]; q++) {
17+
array[outPos++] = p;
18+
}
19+
}
20+
}
21+
22+
private int maxVal(int[] array) {
23+
int max = 0;
24+
for (int i : array) {
25+
if (i > max) max = i;
26+
}
27+
28+
return max;
29+
}
30+
31+
public static void main(String[] args){
32+
BucketSort bs = new BucketSort();
33+
int arr[] = {4, 5, 6, 2, 1};
34+
System.out.println("Bucket Sorting");
35+
System.out.print("Data Sebelum di Sorting : ");
36+
for(int x = 0; x < 5; x++)
37+
System.out.print(arr[x]+" ");
38+
System.out.println("");
39+
bs.bucketSort(arr);
40+
System.out.print("Data Setelah di Sorting : ");
41+
for (int i : arr) {
42+
System.out.print(i + " ");
43+
}
44+
}
45+
}

src/main/java/HeapSort.java

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
public class HeapSort {
2+
public void sort(int arr[]) {
3+
int n = arr.length;
4+
5+
for (int i = n / 2 - 1; i >= 0; i--)
6+
heapify(arr, n, i);
7+
8+
for (int i=n-1; i>=0; i--) {
9+
int temp = arr[0];
10+
arr[0] = arr[i];
11+
arr[i] = temp;
12+
heapify(arr, i, 0);
13+
}
14+
}
15+
16+
void heapify(int arr[], int n, int i) {
17+
int largest = i;
18+
int l = 2*i + 1;
19+
int r = 2*i + 2;
20+
21+
if (l < n && arr[l] > arr[largest])
22+
largest = l;
23+
24+
if (r < n && arr[r] > arr[largest])
25+
largest = r;
26+
27+
if (largest != i) {
28+
int swap = arr[i];
29+
arr[i] = arr[largest];
30+
arr[largest] = swap;
31+
32+
heapify(arr, n, largest);
33+
}
34+
}
35+
36+
static void printArray(int arr[]) {
37+
int n = arr.length;
38+
for (int i=0; i<n; ++i)
39+
System.out.print(arr[i]+" ");
40+
System.out.println();
41+
}
42+
43+
public static void main(String args[]) {
44+
int arr[] = {12, 11, 13, 5, 6};
45+
int n = arr.length;
46+
HeapSort ob = new HeapSort();
47+
System.out.println("Heap Sorting");
48+
System.out.print("Data Sebelum di Sorting : ");
49+
for(int x = 0; x < 5; x++)
50+
System.out.print(arr[x]+" ");
51+
System.out.println("");
52+
ob.sort(arr);
53+
System.out.print("Data Setelah di Sorting : ");
54+
printArray(arr);
55+
}
56+
}

src/main/java/InsertionSort.java

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
class InsertionSort {
2+
void sort(int arr[]) {
3+
int n = arr.length;
4+
for (int i = 1; i < n; ++i) {
5+
int key = arr[i];
6+
int j = i - 1;
7+
8+
while (j >= 0 && arr[j] > key) {
9+
arr[j + 1] = arr[j];
10+
j = j - 1;
11+
}
12+
arr[j + 1] = key;
13+
}
14+
}
15+
16+
static void printArray(int arr[]) {
17+
int n = arr.length;
18+
for (int i = 0; i < n; ++i)
19+
System.out.print(arr[i] + " ");
20+
System.out.println();
21+
}
22+
23+
public static void main(String args[]) {
24+
int arr[] = { 12, 11, 13, 5, 6 };
25+
InsertionSort ob = new InsertionSort();
26+
System.out.println("Insertion Sorting");
27+
System.out.print("Data Sebelum di Sorting : ");
28+
for(int x = 0; x < 5; x++)
29+
System.out.print(arr[x]+" ");
30+
System.out.println("");
31+
System.out.print("Data Setelah di Sorting : ");
32+
ob.sort(arr);
33+
printArray(arr);
34+
}
35+
}

src/main/java/MergeSort.java

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
class MergeSort {
2+
void merge(int arr[], int left, int mid, int right) {
3+
4+
int n1 = mid - left + 1;
5+
int n2 = right - mid;
6+
7+
int Left[] = new int[n1];
8+
int Right[] = new int[n2];
9+
10+
for (int i = 0; i < n1; ++i)
11+
Left[i] = arr[left + i];
12+
for (int j = 0; j < n2; ++j)
13+
Right[j] = arr[mid + 1 + j];
14+
15+
int i = 0, j = 0;
16+
17+
int k = left;
18+
while (i < n1 && j < n2) {
19+
if (Left[i] <= Right[j]) {
20+
arr[k] = Left[i];
21+
i++;
22+
}
23+
else {
24+
arr[k] = Right[j];
25+
j++;
26+
}
27+
k++;
28+
}
29+
30+
while (i < n1) {
31+
arr[k] = Left[i];
32+
i++;
33+
k++;
34+
}
35+
36+
while (j < n2) {
37+
arr[k] = Right[j];
38+
j++;
39+
k++;
40+
}
41+
}
42+
43+
void sort(int arr[], int left, int right) {
44+
if (left < right) {
45+
int mid = (left + right) / 2;
46+
47+
sort(arr, left, mid);
48+
sort(arr, mid + 1, right);
49+
50+
merge(arr, left, mid, right);
51+
}
52+
}
53+
54+
static void printArray(int arr[]) {
55+
int n = arr.length;
56+
for (int i = 0; i < n; ++i)
57+
System.out.print(arr[i] + " ");
58+
System.out.println();
59+
}
60+
61+
public static void main(String args[]) {
62+
int arr[] = { 90, 30, 5, 3, 15 };
63+
MergeSort mergedArr = new MergeSort();
64+
System.out.println("Merge Sorting");
65+
System.out.print("Data Sebelum di Sorting : ");
66+
for(int x = 0; x < 5; x++)
67+
System.out.print(arr[x]+" ");
68+
System.out.println("");
69+
mergedArr.sort(arr, 0, arr.length - 1);
70+
System.out.print("Data Setelah di Sorting : ");
71+
printArray(arr);
72+
}
73+
}

src/main/java/QuickSort.java

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
public class QuickSort {
2+
public static void quickSort(int[] input) {
3+
int n=input.length;
4+
qsort(input,0,n-1);
5+
}
6+
7+
public static void qsort(int input[],int s,int e) {
8+
9+
if(s>=e)
10+
return;
11+
12+
int a=input[s];
13+
14+
int count=s;
15+
for(int i=s+1;i<=e;i++) {
16+
if(input[i]<=a)
17+
count++;
18+
}
19+
20+
input[s]=input[count];
21+
input[count]=a;
22+
23+
int i=s;
24+
int j=e;
25+
while(i<=count && j>=count) {
26+
if(input[i]<=a)
27+
i++;
28+
else {
29+
if(input[j]<=a) {
30+
int temp=input[j];
31+
input[j]=input[i];
32+
input[i]=temp;
33+
i++;
34+
j--;
35+
}
36+
else
37+
j--;
38+
}
39+
}
40+
qsort(input,s,count-1);
41+
qsort(input,count+1,e);
42+
}
43+
44+
static void printArray(int arr[]) {
45+
int n = arr.length;
46+
for (int i = 0; i < n; ++i)
47+
System.out.print(arr[i] + " ");
48+
System.out.println();
49+
}
50+
51+
public static void main(String args[]){
52+
int arr[] = { 12, 11, 13, 5, 6 };
53+
System.out.println("Quick Sorting");
54+
System.out.print("Data Sebelum di Sorting : ");
55+
for(int x = 0; x < 5; x++)
56+
System.out.print(arr[x]+" ");
57+
System.out.println();
58+
quickSort(arr);
59+
System.out.print("Data Setelah di Sorting : ");
60+
printArray(arr);
61+
}
62+
}

src/main/java/RadixSort.java

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
import java.util.*;
2+
3+
class RadixSort {
4+
static int getMax(int arr[], int n) {
5+
int mx = arr[0];
6+
for (int i = 1; i < n; i++)
7+
if (arr[i] > mx)
8+
mx = arr[i];
9+
return mx;
10+
}
11+
12+
static void countSort(int arr[], int n, int exp) {
13+
int output[] = new int[n];
14+
int i;
15+
int count[] = new int[10];
16+
Arrays.fill(count,0);
17+
for (i = 0; i < n; i++)
18+
count[ (arr[i]/exp)%10 ]++;
19+
for (i = 1; i < 10; i++)
20+
count[i] += count[i - 1];
21+
for (i = n - 1; i >= 0; i--) {
22+
output[count[ (arr[i]/exp)%10 ] - 1] = arr[i];
23+
count[ (arr[i]/exp)%10 ]--;
24+
}
25+
26+
for (i = 0; i < n; i++)
27+
arr[i] = output[i];
28+
}
29+
30+
static void radixsort(int arr[], int n) {
31+
int m = getMax(arr, n);
32+
33+
for (int exp = 1; m/exp > 0; exp *= 10)
34+
countSort(arr, n, exp);
35+
}
36+
37+
static void print(int arr[], int n) {
38+
for (int i=0; i<n; i++)
39+
System.out.print(arr[i]+" ");
40+
}
41+
42+
public static void main (String[] args) {
43+
int arr[] = {170, 45, 75, 90, 802};
44+
System.out.println("Radix Sorting");
45+
System.out.print("Data Sebelum di Sorting : ");
46+
for(int x = 0; x < 5; x++)
47+
System.out.print(arr[x]+" ");
48+
int n = arr.length;
49+
radixsort(arr, n);
50+
System.out.println("");
51+
System.out.print("Data Setelah di Sorting : ");
52+
print(arr, n);
53+
}
54+
}

0 commit comments

Comments
 (0)