# Java Program for Find largest prime factor of a number

Given a positive integer \’n\'( 1 <= n <= 1015). Find the largest prime factor of a number.

Input: 6
Output: 3
Explanation
Prime factor of 6 are- 2, 3
Largest of them is \'3\'

Input: 15
Output: 5


## Java

 // Java Program to find largest  // prime factor of number  import java.io.*;  import java.util.*;     class GFG {     // function to find largest prime factor  static long maxPrimeFactors( long n)  {      // Initialize the maximum prime      // factor variable with the       // lowest one      long maxPrime = -1;         // Print the number of 2s      // that divide n      while (n % 2 == 0) {          maxPrime = 2;                     // equivalent to n /= 2          n >>= 1;       }         // n must be odd at this point,      // thus skip the even numbers       // and iterate only for odd      // integers      for (int i = 3; i <= Math.sqrt(n); i += 2) {          while (n % i == 0) {              maxPrime = i;              n = n / i;          }      }         // This condition is to handle       // the case when n is a prime       // number greater than 2      if (n > 2)          maxPrime = n;         return maxPrime;  }     // Driver code  public static void main(String[] args)  {      Long n = 15l;      System.out.println(maxPrimeFactors(n));         n = 25698751364526l;      System.out.println(maxPrimeFactors(n));  }  }     // This code is contributed by Gitanjali

Output:

5
328513


Time complexity: Auxiliary space: Please refer complete article on Find largest prime factor of a number for more details!

My Personal Notes arrow_drop_up

Article Tags :

2

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.