Skip to content

Commit 99e55ee

Browse files
Merge pull request kishanrajput23#198 from shanvijha30/Kadane_shanvi
Added Kadane's Algorithm Maximum Subarray
2 parents 204332f + 4010ccc commit 99e55ee

File tree

3 files changed

+111
-89
lines changed

3 files changed

+111
-89
lines changed

Kadanes_Algorithm.java

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
import java.util.*;
2+
3+
public class Main {
4+
public static long maxSubarraySum(int[] arr, int n) {
5+
long maxi = Long.MIN_VALUE; // maximum sum
6+
long sum = 0;
7+
8+
for (int i = 0; i < n; i++) {
9+
10+
sum += arr[i];
11+
12+
if (sum > maxi) {
13+
maxi = sum;
14+
}
15+
16+
// If sum < 0: discard the sum calculated
17+
if (sum < 0) {
18+
sum = 0;
19+
}
20+
}
21+
22+
if (maxi < 0) maxi = 0;
23+
24+
return maxi;
25+
}
26+
27+
public static void main(String args[]) {
28+
int[] arr = { -2, 1, -3, 4, -1, 2, 1, -5, 4};
29+
int n = arr.length;
30+
long maxSum = maxSubarraySum(arr, n);
31+
System.out.println("The maximum subarray sum is: " + maxSum);
32+
33+
}
34+
35+
}
36+

Odd_Even_Sort.java

-46
This file was deleted.

calc.java

+75-43
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,75 @@
1-
import java.util.Scanner;
2-
3-
public class Calculator {
4-
public static void main(String[] args) {
5-
Scanner scanner = new Scanner(System.in);
6-
double num1, num2, result;
7-
char operator;
8-
9-
System.out.print("Enter first number: ");
10-
num1 = scanner.nextDouble();
11-
12-
System.out.print("Enter an operator (+, -, *, /): ");
13-
operator = scanner.next().charAt(0);
14-
15-
System.out.print("Enter second number: ");
16-
num2 = scanner.nextDouble();
17-
18-
switch (operator) {
19-
case '+':
20-
result = num1 + num2;
21-
break;
22-
case '-':
23-
result = num1 - num2;
24-
break;
25-
case '*':
26-
result = num1 * num2;
27-
break;
28-
case '/':
29-
if (num2 != 0) {
30-
result = num1 / num2;
31-
} else {
32-
System.out.println("Error: Division by zero!");
33-
return;
34-
}
35-
break;
36-
default:
37-
System.out.println("Error: Invalid operator!");
38-
return;
39-
}
40-
41-
System.out.println("Result: " + result);
42-
}
43-
}
1+
// Java program for simple calculator
2+
3+
import java.io.*;
4+
import java.lang.*;
5+
import java.lang.Math;
6+
import java.util.Scanner;
7+
public class BasicCalculator {
8+
9+
public static void main(String[] args)
10+
{
11+
// stores two numbers
12+
double num1, num2;
13+
14+
// Take input from the user
15+
Scanner sc = new Scanner(System.in);
16+
17+
System.out.println("Enter the numbers");
18+
19+
// take the inputs
20+
num1 = sc.nextDouble();
21+
22+
num2 = sc.nextDouble();
23+
24+
System.out.println("Enter the operator (+,-,*,/)");
25+
26+
char op = sc.next().charAt(0);
27+
28+
double o = 0;
29+
30+
switch (op) {
31+
32+
// case to add two numbers
33+
case '+':
34+
35+
o = num1 + num2;
36+
37+
break;
38+
39+
// case to subtract two numbers
40+
case '-':
41+
42+
o = num1 - num2;
43+
44+
break;
45+
46+
// case to multiply two numbers
47+
case '*':
48+
49+
o = num1 * num2;
50+
51+
break;
52+
53+
// case to divide two numbers
54+
case '/':
55+
56+
o = num1 / num2;
57+
58+
break;
59+
60+
default:
61+
62+
System.out.println("You enter wrong input");
63+
64+
break;
65+
}
66+
67+
System.out.println("The final result:");
68+
69+
System.out.println();
70+
71+
// print the final result
72+
System.out.println(num1 + " " + op + " " + num2
73+
+ " = " + o);
74+
}
75+
}

0 commit comments

Comments
 (0)