Hornera algoritmo: Malsamoj inter versioj
Grasyop (diskuto | kontribuoj) Elfrancigita el la nuntempa artikolo fr:Méthode_de_Horner. |
(Neniu diferenco)
|
Kiel registrite je 08:09, 25 mar. 2007
Hornera algoritmo estas matematika metodo uzata en cifereca analitiko, precize en polinoma kalkulo, aŭ por efike komputi la valoron de polinoma funkcio en iu punkto, aŭ por kalkuli kvocienton de polinomo per monomo .
Komputado de la valoron de polinoma funkcio en iu punkto
Estu polinomo super komuta ringo kaj estu iu elemento de .
Por komputi eblas pensi, ke necesas unue komputi ciujn potencojn de , multipliki poste tiujn per siaj koeficientoj , kaj fine sumi la tial akiratajn kvantojn. Se oni ankaŭ komputas multiplikante per si mem fojoj, tiam la komputado de necesas multiplikadojn. Tiu kvanto kreskas kvadrate de la grado de la polinomo. Rapida potencado ebligas pliefikigi la komputadon de kaj do de : la kvanto de necesaj multiplikadoj tiam kreskas kiel . Sed tiu ankoraŭ ne estas tiel rapida ol la Hornera metodo.
Por komputi kun la Hornera metodo, unue skribu :
Tiam sufiĉas komputi sekvante la ordon de la parentezoj. Tiu metodo necesas sole multiplikadojn. La komputtempo estas tiumaniere proksimume proporcia al grado de la polinomo (adicii estas multe pli rapida ol multipliki).
Komputado de la kvocienton de polinomo per monomo
Ni serĉu la kvocienton de la polinomo en sia eŭklida divido per . Ni havas :
Se oni nun skribas kaj identigas la samgradajn koeficientojn el la du membroj, tiam aperas ke :
- je ĉiuj k kiel 0 < k < n
La valoro de P(a) estas ne alia ol λ0 + aq0.
La n valoroj el la vico q tie komputataj precize estas la n sinsekvaj kvantoj komputitaj al la antaŭa paragrafo dum la komputado de P(a). Tial sufiĉas memori tiuj sinsekvajn valorojn por povi skribi la kvocientan polinomon. La lasta valoro estas la resto.
Tabela ilustraĵo
Tabela prezentado de la Hornera metodo aperigas lia simplecon : ĉiu koeficiento de Q akiriĝas multiplikante la koeficienton de la liva fako per a kaj adiciante al tiu produto la koeficienton de la supera fako.
Koeficientoj de P | λn | λn - 1 | λn - 2 | ... | λ1 | λ0 |
Koeficientoj de Q | qn - 1 = λn |
qn - 2 = aqn - 1 + λn - 1 |
qn - 3 = aqn - 2 + λn - 2 |
... | q0 = aq1 + λ1 |
r = aq0 + λ0 |
Cifereca ekzemplo : divido de per
Koeficientoj de P | 4 | − 7 | 3 | − 5 |
Koeficientoj de Q | 4 | 8 − 7 = 1 | 2 + 3 = 5 | r = 10 − 5 = 5 |
Tio havigas : .