diff --git a/src/main/java/com/thealgorithms/dynamicprogramming/Fibonacci.java b/src/main/java/com/thealgorithms/dynamicprogramming/Fibonacci.java
index aeabb20e3b18..521bb2a9d1ba 100644
--- a/src/main/java/com/thealgorithms/dynamicprogramming/Fibonacci.java
+++ b/src/main/java/com/thealgorithms/dynamicprogramming/Fibonacci.java
@@ -19,6 +19,7 @@ public static void main(String[] args) {
         System.out.println(fibMemo(n));
         System.out.println(fibBotUp(n));
         System.out.println(fibOptimized(n));
+        System.out.println(fibBinet(n));
         sc.close();
     }
 
@@ -90,5 +91,21 @@ public static int fibOptimized(int n) {
             res = next;
         }
         return res;
-    }
 }
+    
+    /**
+    * We have only defined the nth Fibonacci number in terms of the two before it. Now, we will look at Binet's formula to calculate the nth Fibonacci number in constant time.
+    * The Fibonacci terms maintain a ratio called golden ratio denoted by Φ, the Greek character pronounced ‘phi'.
+    * First, let's look at how the golden ratio is calculated: Φ = ( 1 + √5 )/2 = 1.6180339887...
+    * Now, let's look at Binet's formula: Sn = Φⁿ–(– Φ⁻ⁿ)/√5
+    * We first calculate the squareRootof5 and phi and store them in variables. Later, we apply Binet's formula to get the required term.
+    * Time Complexity will be O(1)
+    */
+    
+    public static int fibBinet(int n) {
+        double squareRootOf5 = Math.sqrt(5);
+        double phi = (1 + squareRootOf5)/2;
+        int nthTerm = (int) ((Math.pow(phi, n) - Math.pow(-phi, -n))/squareRootOf5);
+        return nthTerm;
+    }
+}
\ No newline at end of file