0
嗨,我必須爲此設計一個算法。我已經研究了平分法,牛頓法,它似乎是平分法是正確的,但它需要一個算法去掉。例如x^3 + x - 2 = 0有沒有辦法爲這個問題提供一個廣義的算法?
嗨,我必須爲此設計一個算法。我已經研究了平分法,牛頓法,它似乎是平分法是正確的,但它需要一個算法去掉。例如x^3 + x - 2 = 0有沒有辦法爲這個問題提供一個廣義的算法?
二進制搜索將找到(其中之一)根。
他們建議的是假設函數在(a, f(a))
和(b, f(b))
之間是線性的,並且選取這些點之間的直線穿過x軸的點。即假定
f(x) = m * x + b
這可能比簡單的二分查找new_x = (a+b)/2
更快地收斂。
你好,但我們不需要給出一個算法來找到根,而不是假設一個方程嗎?對不起,我真的很困惑這個 –
@傑克遜柯林斯:不,你迭代,直到你已經將範圍縮小到某個閾值。這是一種連續迭代方法,每次迭代都可以進行更準確的猜測。所有你需要的是一個進行下一次猜測的公式,以及一種決定何時停止的方法。在這種情況下,你評估'f(new_x)',看看它是否與'f(a)'或'f(b)'有相反的符號。這是你的新範圍。 –