मैंने यह कोड बनाया .. और मुझे इसे सबसे अच्छा प्राप्त करने की आवश्यकता है .. मुझे वास्तव में फाइबोनैकी संख्याओं की गणना करने का सबसे अच्छा प्रदर्शन चाहिए .. कृपया मदद करें ..क्या कोई बेहतर तरीका है (प्रदर्शन) इस से फाइबोनैकी की गणना करता है?
मैंने इस प्रकार के कुछ कोड पढ़े हैं गणना और मैं मैं उनमें से सबसे अच्छा मिल गया लगता है ..
Avaliate यह मेरे लिए .. plz ..
ps: और मैं वास्तव में BigInteger .. की जरूरत है मैं भारी संख्या के फाइबोनैचि गणना करेंगे
ps2: मैंने इस एल्गोरिदम के साथ कुछ बड़ी संख्याओं की गणना की है और मुझे एक अच्छा प्रतिक्रिया समय मिला है .. लेकिन मुझे यह जानने की ज़रूरत है कि क्या यह बेहतर
PS3 हो सकता है: इस कोड को चलाने के लिए आप क्योंकि यह ढेर अतिप्रवाह बनाता है यह वीएम तर्क -Xss16384k
(StackSize)
public class Fibonacci {
private static BigInteger[] fibTmp = { BigInteger.valueOf(0), BigInteger.valueOf(1) };
public static BigInteger fibonacci(long v) {
BigInteger fib = BigInteger.valueOf(0);
if (v == 1) {
fib = BigInteger.valueOf(1);
} else if (v == 0) {
fib = BigInteger.valueOf(0);
} else {
BigInteger v1 = fibonacci(v - 1);
BigInteger v2 = fibTmp[(int) (v - 2)];
fib = v1.add(v2);
}
synchronized (fibTmp) {
if (fibTmp.length - 1 < v)
fibTmp = Arrays.copyOf(fibTmp, (int) (v + 10));
fibTmp[(int) v] = fib;
}
return fib;
}
}
यह जावा जैसा दिखता है। सर्वोत्तम प्रदर्शन के लिए, भाषा महत्वपूर्ण हो सकती है। क्या आप एक भाषा टैग जोड़ सकते हैं? –
नहीं .. भाषा के बारे में भूल जाओ .. एल्गोरिदम प्रदर्शन है .. इस मामले में भाषा कोई फर्क नहीं पड़ता! =) – thiagoh
जैसा कि आप चाहें लेकिन सभी भाषाएं गहरी रिकर्सिविटी से संबंधित नहीं हैं ... –