sublinear sayı n'inci fibonacci zaman | Netgez.com
SORU
6 EKİM 2009, Salı


sublinear sayı n'inci fibonacci zaman

Alt doğrusal zamanda n'inci fibonacci sayısını hesaplamak için bir algoritma var mı?

CEVAP
6 EKİM 2009, Salı


Pillsy aşağıdaki matris üs alma, matris için böyle bir referans yok

M = [1 1] 
    [1 0] 

fib(n) = Mn1,2

Güçler tekrarlanan çarpma kullanarak matris yetiştirmek çok verimli değil.

Matris üs için iki yaklaşım böl ve fethet verirMn. ben^>Ç( . ben^>n lnsabit), ama hataları sınırlı kayan nokta hassas. nedeniyle tanıtabilir hangi adımları, ya da n-boyutlu ayrışma

Eğer tam bir kayan nokta değeri uygulamanız hassasiyetle daha büyük isterseniz, (ln n ) yaklaşımı bu ilişkinin temelinde kullanmak zorunda:

Mn = (Mn/2)2 if n even
   = M.Mn-1 if n is odd

Öz deÄŸeri az parçalanmaMbulur iki matrisiUveΛbu . böyle ^b>Λçapraz ve

 M  = U Λ U-1 
 Mn = ( U Λ U-1) n
    = U Λ U-1 U Λ U-1 U Λ U-1 ... n times
    = U Λ Λ Λ ... U-1 
    = U Λ n U-1 
Köşegen bir matris yetiÅŸtirmekΛiçin . ben^>nth güç her elemanı yetiÅŸtirme basit bir mesele deÄŸildirΛiçin . ben^>ninci, bu yetiÅŸtirme(1) O bir yöntem verirMiçin . ben^>ninci güç. Ancak, deÄŸerleriΛtamsayılar olmak deÄŸil, büyük olasılıkla bazı hatalar ortaya çıkar.

TanımlamaΛ2x2 matrisi için

Λ = [ λ1 0 ]
  = [ 0 λ2 ]

Her bulmak içinλbiz çözmek

 |M - λI| = 0
hangi verir
 |M - λI| = -λ ( 1 - λ ) - 1

λ² - λ - 1 = 0

kuadratik formül kullanarak

λ    = ( -b ± √ ( b² - 4ac ) ) / 2a
     = ( 1 ± √5 ) / 2
 { λ1, λ2 } = { Φ, 1-Φ } where Φ = ( 1   √5 ) / 2

Eğer Jason cevabı okuduysanız eğer, bunun nereye gittiğini nerede olduğunu görebilirsiniz.

Bu öz vektörleri için çözmeX1veX2:

if X1 = [ X1,1, X1,2 ]

 M.X1 1 = λ1X1

 X1,1   X1,2 = λ1 X1,1
 X1,1      = λ1 X1,2

=>
 X1 = [ Φ,   1 ]
 X2 = [ 1-Φ, 1 ]

Bu vektörler verinU:

U = [ X1,1, X2,2 ]
    [ X1,1, X2,2 ]

  = [ Φ,   1-Φ ]
    [ 1,   1   ]

Tersine çevirmeUkullanarak

A   = [  a   b ]
      [  c   d ]
=>
A-1 = ( 1 / |A| )  [  d  -b ]
                   [ -c   a ]

bu yüzdenU-1tarafından . verilir

U-1 = ( 1 / ( Φ - ( 1 - Φ ) )  [  1  Φ-1 ]
                               [ -1   Φ  ]
U-1 = ( √5 )-1  [  1  Φ-1 ]
               [ -1   Φ  ]

Akıl sağlığını kontrol edin:

UΛU-1 = ( √5 )-1 [ Φ   1-Φ ] . [ Φ   0 ] . [ 1  Φ-1 ] 
                     [ 1   1  ]   [ 0  1-Φ ]   [ -1   Φ ]

let Ψ = 1-Φ, the other eigenvalue

as Φ is a root of λ²-λ-1=0 
so  -ΨΦ = Φ²-Φ = 1
and Ψ Φ = 1

UΛU-1 = ( √5 )-1 [ Φ   Ψ ] . [ Φ   0 ] . [  1  -Ψ ] 
                 [ 1   1 ]   [ 0   Ψ ]   [ -1   Φ ]

       = ( √5 )-1 [ Φ   Ψ ] . [ Φ   -ΨΦ ] 
                 [ 1   1 ]   [ -Ψ  ΨΦ ]

       = ( √5 )-1 [ Φ   Ψ ] . [ Φ    1 ] 
                 [ 1   1 ]   [ -Ψ  -1 ]

       = ( √5 )-1 [ Φ²-Ψ²  Φ-Ψ ] 
                  [ Φ-Ψ      0 ]

       = [ Φ Ψ   1 ]    
         [ 1     0 ]

       = [ 1     1 ] 
         [ 1     0 ]

       = M 

Akıl sağlığını kontrol tutar.

Şimdi hesaplamak için ihtiyacımız olan her şey varM. ben^>n1,2:

Mn = UΛnU-1
   = ( √5 )-1 [ Φ   Ψ ] . [ Φn  0 ] . [  1  -Ψ ] 
              [ 1   1 ]   [ 0   Ψn ]   [ -1   Φ ]

   = ( √5 )-1 [ Φ   Ψ ] . [  Φn  -ΨΦn ] 
              [ 1   1 ]   [ -Ψn   ΨnΦ ]

   = ( √5 )-1 [ Φ   Ψ ] . [  Φn   Φn-1 ] 
              [ 1   1 ]   [ -Ψnn-1 ] as ΨΦ = -1

   = ( √5 )-1 [ Φn 1n 1      Φnn ]
              [ Φnn      Φn-1n-1 ]

bu yüzden

 fib(n) = Mn1,2
        = ( Φn - (1-Φ)n ) / √5

Formülü başka bir yerde verilen katılıyor.

Sen ortaklıkları ondan tekrarın ilişki, ama mühendislik hesaplama ve simülasyon hesaplama özdeğerler ve öz büyük matrislerin önemli bir aktivite olarak verir istikrar ve harmonikler sistemleri denklemleri yanı sıra, izin yetiştirme matrisleri için yüksek güçler etkili.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • beautyexchange

    beautyexchan

    4 EYLÜL 2006
  • Michael Lummio

    Michael Lumm

    25 Mayıs 2007

İLGİLİ SORU / CEVAPLAR