Skip to content

Commit 8288fd9

Browse files
committed
Inititail Commit
0 parents  commit 8288fd9

31 files changed

+529
-0
lines changed

BitManipulation/BinaryToGray.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class BinaryToGray {
4+
static void convert(int n){
5+
int x = n;
6+
int temp = 0;
7+
while ((x>>=1) != 0){
8+
temp++;
9+
}
10+
System.out.println(Math.pow(2,temp));
11+
}
12+
public static void main(String[] args) {
13+
convert(7);
14+
}
15+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class CheckKthBitSetOrNot {
4+
static void kthBitLeftShift(int n, int k){
5+
if ( (n & (1 << (k-1))) != 0) {
6+
System.out.println("Yes the kth bit is set as One");
7+
}
8+
else {
9+
System.out.println("No the kth bit is not set as One");
10+
}
11+
}
12+
static void kthBitRightShift(int n, int k){
13+
if ( ( (n>>(k-1)) & 1 ) == 1 ) {
14+
System.out.println("Yes the kth bit is set as One");
15+
}
16+
else {
17+
System.out.println("No the kth bit is not set as One");
18+
}
19+
}
20+
public static void main(String[] args) {
21+
int n = 5;
22+
int k = 3;
23+
kthBitLeftShift(n,k);
24+
kthBitRightShift(n,k);
25+
}
26+
}

BitManipulation/CheckPowerOfTwo.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class CheckPowerOfTwo {
4+
public static void main(String[] args) {
5+
int num = 15;
6+
int num1 = 16;
7+
System.out.println( (num & (num-1)) == 0);
8+
System.out.println( (num1 &(num1-1)) == 0);
9+
}
10+
}

BitManipulation/CountSetBits.java

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class CountSetBits {
4+
/*
5+
* n = 5
6+
* binary = 1 0 1
7+
* in 32 bits 000000.......0101
8+
* */
9+
public static void main(String[] args) {
10+
int n = 17;
11+
int res = 0;
12+
while (n>0){
13+
if (n%2 != 0) {
14+
res++;
15+
}
16+
n = n/2;
17+
}
18+
System.out.println(res);
19+
n = 5;
20+
res = 0;
21+
while (n>0){
22+
if ((n&1) == 0) {
23+
res++;
24+
}
25+
n = n>>1;
26+
}
27+
n = 5;
28+
res = 0;
29+
while (n>0){
30+
res += (n&1);
31+
n = n>>1;
32+
}
33+
}
34+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class DivideAndMultiply {
4+
public static void main(String[] args) {
5+
int n = 5;
6+
System.out.println("Divide: "+(n>>1));
7+
System.out.println("Multiply: "+(n<<1));
8+
}
9+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class FirstBitFromRight {
4+
static int firstBit(int n){
5+
if (n>=1){
6+
int x = n ^ (n-1);
7+
x = x + 1;
8+
System.out.println(x);
9+
System.out.println((Math.log(x)));
10+
return (int)Math.ceil(Math.log(x)/Math.log(2));
11+
}
12+
return 0;
13+
}
14+
public static void main(String[] args) {
15+
System.out.println(firstBit(544));
16+
17+
}
18+
}

BitManipulation/FlipBits.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class FlipBits {
4+
public static void main(String[] args) {
5+
int num = 23;
6+
int allBits1 = 0;
7+
System.out.println(allBits1);
8+
}
9+
}

BitManipulation/LogBase2.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class LogBase2 {
4+
//only for 32 bit
5+
public static void main(String[] args) {
6+
int num = 160;
7+
int log2 = 0;
8+
while ((num>>=1) != 0){
9+
log2++;
10+
}
11+
System.out.println(log2);
12+
}
13+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class LongestConsecutiveOnes {
4+
static int maxConsecutiveOnes(int x) {
5+
int currMax = 0;
6+
int max = 0;
7+
while(x>0){
8+
if((x&1) == 1) {
9+
currMax++;
10+
}
11+
else {
12+
currMax = 0;
13+
}
14+
if(currMax>=max){
15+
max = currMax;
16+
}
17+
x = x>>1;
18+
}
19+
return max;
20+
}
21+
public static void main(String[] args) {
22+
System.out.println(maxConsecutiveOnes(14));
23+
System.out.println(maxConsecutiveOnes(222));
24+
}
25+
}

BitManipulation/MSB.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class MSB{
4+
public static void main(String[] args) {
5+
int n = 10;
6+
int temp = 0;
7+
while ((n>>=1) != 0){
8+
temp++;
9+
}
10+
System.out.println("MSB is: "+Math.pow(2,temp));
11+
}
12+
}

BitManipulation/MissingNumber.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class MissingNumber {
4+
public static void main(String[] args) {
5+
int arr[] = {1,4,3,2,5,6,7,9};
6+
int one = 1;
7+
for (int i = 2; i <=1+arr.length ; i++) {
8+
one^=i;
9+
}
10+
int two = arr[0];
11+
for (int i = 1; i <arr.length ; i++) {
12+
two^=arr[i];
13+
}
14+
System.out.println(one^two);
15+
}
16+
}

BitManipulation/OneOddOccuring.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class OneOddOccuring {
4+
public static void main(String[] args) {
5+
int arr[] = {2,2,3,3,3,4,4};
6+
int res = arr[0];
7+
for (int i = 1; i < arr.length; i++) {
8+
System.out.println(i+"."+arr[i]+"="+res);
9+
res^=arr[i];
10+
System.out.println(i+"."+arr[i]+"="+res);
11+
}
12+
System.out.println(res);
13+
}
14+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package SummerTrainingGFG.BitManipulation.Practice;
2+
3+
public class Practice {
4+
public static void main(String[] args) {
5+
int x =11;
6+
while (x>0){
7+
System.out.println(x/2);
8+
x = x/2;
9+
}
10+
}
11+
}

BitManipulation/SetBit.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class SetBit {
4+
public static void main(String[] args) {
5+
int num= 5;
6+
int set3rdBit = 2;
7+
int r = 1 << (set3rdBit-1);
8+
System.out.println(num|r);
9+
}
10+
}

BitManipulation/SwapNumbers.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class SwapNumbers {
4+
public static void main(String[] args) {
5+
int a = 10;
6+
int b = 54;
7+
a^=b;
8+
b^=a;
9+
a^=b;
10+
System.out.println(a+" "+b);
11+
}
12+
}

BitManipulation/ToggleBits.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class ToggleBits {
4+
public static void main(String[] args) {
5+
int num= 8;
6+
int toggle1st = 1;
7+
int r = 1 << (toggle1st-1);
8+
System.out.println(num^r);
9+
}
10+
}

BitManipulation/TwoOddOccuring.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class TwoOddOccuring {
4+
}

BitManipulation/Unset.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package SummerTrainingGFG.BitManipulation;
2+
3+
public class Unset {
4+
public static void main(String[] args) {
5+
int num= 5;
6+
int unSet3rdBit = 3;
7+
int r = 1 << (unSet3rdBit-1);
8+
r = ~r;
9+
System.out.println(num&r);
10+
}
11+
}

Mathematics/LastTermOfGP.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package SummerTrainingGFG.Mathematics;
2+
3+
public class LastTermOfGP {
4+
public static void main(String[] args) {
5+
int n1 = 84;
6+
int n2 = 87;
7+
int n = 3;
8+
double r = (double)n2/(double)n1;
9+
System.out.println(n1*Math.pow(r,n-1));
10+
}
11+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package SummerTrainingGFG.Mathematics;
2+
3+
public class NumberOfDigitsInANumber {
4+
public static void main(String[] args) {
5+
long i = 100045224656l;
6+
int numOfDigits = (int) (Math.floor(Math.log10(i))+1);
7+
System.out.println(numOfDigits);
8+
}
9+
}

Mathematics/PrimeNumber.java

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package SummerTrainingGFG.Mathematics;
2+
3+
public class PrimeNumber {
4+
static boolean isPrime(int n){
5+
if (n<=1){
6+
return false;
7+
}
8+
if (n<=3){
9+
return true;
10+
}
11+
if (n%2 == 0 || n%3 ==0){
12+
return false;
13+
}
14+
for (int i = 5; i*i <= n ; i=i+6) {
15+
if (n%i == 0 || n%(i+2) == 0){
16+
return false;
17+
}
18+
}
19+
return true;
20+
/*if(n<=1){
21+
return false;
22+
}
23+
if(n<=3){
24+
return true;
25+
}
26+
if (n%2 == 0 || n%3 ==0){
27+
return false;
28+
}
29+
int res = 0;
30+
while (Math.sqrt(n)>0){
31+
res += (n&1);
32+
n = n>>1;
33+
}
34+
if(res == 2 || res == 3){
35+
return true;
36+
}
37+
return false;*/
38+
}
39+
public static void main(String[] args) {
40+
for (int i = 0; i < 50 ; i++) {
41+
if (isPrime(i)){
42+
System.out.println(i+". "+Integer.toBinaryString(i));
43+
}
44+
}
45+
}
46+
}

Miscellaneous/FactorialDigits.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package SummerTrainingGFG.Miscellaneous;
2+
3+
import java.math.BigInteger;
4+
5+
public class FactorialDigits {
6+
static BigInteger fact(BigInteger num){
7+
if (num.compareTo(new BigInteger("0")) == 0){
8+
return BigInteger.ONE;
9+
}
10+
else if (num.compareTo(new BigInteger("1")) == 0){
11+
return BigInteger.ONE;
12+
}
13+
else {
14+
return num.multiply(fact(num.subtract(BigInteger.ONE)));
15+
16+
}
17+
}
18+
public static void main(String[] args) {
19+
BigInteger res = fact(new BigInteger("120"));
20+
System.out.println((int)Math.floor(Math.log10(Double.parseDouble(String.valueOf(res)))+1));
21+
}
22+
}

Miscellaneous/NaturalNumbers.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package SummerTrainingGFG.Miscellaneous;
2+
3+
public class NaturalNumbers {
4+
static int sum(int n){
5+
if (n==1)
6+
return 1;
7+
return n+sum(n-1);
8+
}
9+
static int formulaSum(int n){
10+
return (n*(n+1))/2;
11+
}
12+
public static void main(String[] args) {
13+
int n = 3;
14+
System.out.println(sum(n));
15+
System.out.println(formulaSum(n));
16+
}
17+
}

0 commit comments

Comments
 (0)