Skip to content

Commit dae7d2e

Browse files
committed
Made files for college questions for DAA
1 parent 99289df commit dae7d2e

16 files changed

+260
-0
lines changed

College/DAA/Practical_1.java

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
// Bubble Sort, Selection Sort, Insertion Sort
2+
3+
import java.util.Random;
4+
5+
public class Practical_1 {
6+
private static void bubblesort(int size){
7+
long start, end; double c;
8+
Random random = new Random();
9+
int[] a = new int[size];
10+
for (int i = 0; i < size; i++) {
11+
a[i] = random.nextInt(1000);
12+
}
13+
start = System.nanoTime();
14+
for (int i = 0; i < size - 1; i++) {
15+
for (int j = 0; j < size - i - 1; j++) {
16+
if (a[j + 1] < a[j]) {
17+
int t = a[j];
18+
a[j] = a[j + 1];
19+
a[j + 1] = t;
20+
}
21+
}
22+
}
23+
end = System.nanoTime(); c = (double) (end - start);
24+
System.out.println("\nBUBBLE SORT");
25+
System.out.println("Time:" + c);
26+
}
27+
28+
private static void selectionsort(int size){
29+
long start, end; double c;
30+
Random random = new Random();
31+
int[] a = new int[size];
32+
for (int i = 0; i < size; i++) {
33+
a[i] = random.nextInt(1000);
34+
}
35+
start = System.nanoTime();
36+
for (int i = 0; i < size - 1; i++) {
37+
int min = i;
38+
for (int j = i + 1; j < size; j++) {
39+
if (a[j] < a[min]) {
40+
min = j;
41+
}
42+
}
43+
int t = a[min];
44+
a[min] = a[i];
45+
a[i] = t;
46+
}
47+
end = System.nanoTime(); c = (double) (end - start);
48+
System.out.println("\nSELECTION SORT");
49+
System.out.println("Time:" + c);
50+
}
51+
52+
private static void insertionsort(int size){
53+
long start, end; double c;
54+
Random random = new Random();
55+
int[] a = new int[size];
56+
for (int i = 0; i < size; i++) {
57+
a[i] = random.nextInt(1000);
58+
}
59+
start = System.nanoTime();
60+
for (int i = 1; i < size; i++) {
61+
int t = a[i];
62+
int j = i - 1;
63+
while (j >= 0 && a[j] > t) {
64+
a[j + 1] = a[j];
65+
j = j - 1;
66+
}
67+
a[j + 1] = t;
68+
}
69+
end = System.nanoTime(); c = (double) (end - start);
70+
System.out.println("\nINSERTION SORT");
71+
System.out.println("Time:" + c);
72+
}
73+
public static void main(String[] args) {
74+
int size = 1000;
75+
bubblesort(size);
76+
selectionsort(size);
77+
insertionsort(size);
78+
}
79+
}

College/DAA/Practical_10.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_10 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_11.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_11 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_12.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_12 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_13.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_13 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_14.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_14 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_15.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_15 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_2.java

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// Merge Sort, Quick Sort, Heap Sort
2+
3+
import java.util.*;
4+
5+
public class Practical_2 {
6+
public static void main(String [] args){
7+
8+
}
9+
}

College/DAA/Practical_3.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_3 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_4.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_4 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_5.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_5 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_6.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_6 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_7.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_7 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_8.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_8 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/DAA/Practical_9.java

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import java.util.*;
2+
3+
public class Practical_9 {
4+
public static void main(String [] args){
5+
6+
}
7+
}

College/Merge_sort.cpp

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
#include<bits/stdc++.h>
2+
using namespace std;
3+
4+
void merge(vector<int>& arr, vector<int> & temp, int start, int end){
5+
int mid = (start + end)/2;
6+
int idx_tmp = start;
7+
int i = start, j = mid+1;
8+
while(i <= mid && j <= end){
9+
if(arr[i] < arr[j]){
10+
temp[idx_tmp++] = arr[i++];
11+
}
12+
else{
13+
temp[idx_tmp++] = arr[j++];
14+
}
15+
}
16+
while(i<=mid)
17+
temp[idx_tmp++] = arr[i++];
18+
while(j<=end)
19+
temp[idx_tmp++] = arr[j++];
20+
while(start<=end){
21+
arr[start] = temp[start];
22+
start++;
23+
}
24+
}
25+
26+
void merge_sort(vector<int>& arr, vector<int>& temp, int start, int end){
27+
if(start >= end) return;
28+
int mid = (start + end)/2;
29+
merge_sort(arr, temp, start, mid);
30+
merge_sort(arr, temp, mid+1, end);
31+
merge(arr, temp, start, end);
32+
}
33+
34+
void sort_array(vector<int>& arr){
35+
int n = arr.size();
36+
vector<int> temp(n,0);
37+
merge_sort(arr, temp, 0, n-1);
38+
}
39+
40+
void bubbleSort(vector<int>& arr){
41+
int n = arr.size();
42+
for(int i = 0; i < n-1; i++){
43+
for(int j = 0; j < n-i-1; j++){
44+
if(arr[j] > arr[j+1]){
45+
swap(arr[j], arr[j+1]);
46+
}
47+
}
48+
}
49+
}
50+
51+
int main(){
52+
vector<int> a,b;
53+
int items = 1000;
54+
for (int i = 0; i < items; i++) {
55+
int num = rand();
56+
a.push_back(num);
57+
b.push_back(num);
58+
}
59+
cout << "\n" << "No. of items: " << items << "\n";
60+
61+
// Merge Sort
62+
{
63+
chrono::high_resolution_clock::time_point start_time_merge = chrono::high_resolution_clock::now();
64+
sort_array(a);
65+
chrono::high_resolution_clock::time_point end_time_merge = chrono::high_resolution_clock::now();
66+
chrono::duration<double, nano> runtime_merge = end_time_merge - start_time_merge;
67+
cout<<"Merge Sort: ";
68+
cout << "\n" << "Runtime: " << runtime_merge.count() << " nanoseconds\n";
69+
}
70+
71+
// Bubble Sort
72+
{
73+
chrono::high_resolution_clock::time_point start_time_bubble = chrono::high_resolution_clock::now();
74+
bubbleSort(b);
75+
chrono::high_resolution_clock::time_point end_time_bubble = chrono::high_resolution_clock::now();
76+
chrono::duration<double, nano> runtime = end_time_bubble - start_time_bubble;
77+
cout<<"Bubble Sort: ";
78+
cout << "\n" << "Runtime: " << runtime.count() << " nanoseconds";
79+
}
80+
return 0;
81+
}

0 commit comments

Comments
 (0)