Boyer-Moore Algoritmasi ve Analizi - PowerPoint PPT Presentation

About This Presentation
Title:

Boyer-Moore Algoritmasi ve Analizi

Description:

... En k t durum Metin: aaaaaaaaabaa Aranan: baa O(n*m) En iyi durum O(n/m) Ortalama durumda O() Kaynak a Introduction Algorithms Thomas H. Cormen, ... – PowerPoint PPT presentation

Number of Views:146
Avg rating:3.0/5.0
Slides: 13
Provided by: Kere55
Category:

less

Transcript and Presenter's Notes

Title: Boyer-Moore Algoritmasi ve Analizi


1
Boyer-Moore Algoritmasi ve Analizi
  • Kerem ERZURUMLU

2
Sunum Plani
  • Temel Tanimlar
  • Basit Bir Arama Algoritmasi
  • Algoritma
  • Analizi
  • Boyer-Moore Arama Algoritmasi
  • Algoritma
  • Analizi
  • Sonuç

3
Temel Tanimlar
  • Metin arama algoritmasi üzerinde
  • Aranan Aranmakta olan kelime
  • Metin Aranan kelimenin arandigi katar
  • olarak anilacaktir

4
Basit Bir Arama Algoritmasi - I
  • Düz mantik ile yaratilacak olan ilk algoritma
  • for(i0iltstrlen(metin)i)
  • ti
  • match0
  • for(j0(jltstrlen(aranan))(match0))j)
  • if(metint!aranani) match1

5
Basit Bir Arama Algoritmasi - II
  • Algoritma metin içindeki her harf için en az 1
    defa çagirilacaktir
  • En kötü durumu sürekli tekrar eden bir harf
    kümesi içindir
  • aaaaaaaaaaaa içerisinde aab aranmasi
  • En kötü durum için algotirma karmasikligi O(nm)
    olacaktir
  • En iyi durum için (arananin ilk harfinin metinde
    olmamasi) karmasikligi O(n) olacaktir

6
Boyer-Moore Algoritmasi - I
  • Arama isleminin daha akilli yapilmasina dayanir
  • Birinci amaç metinin ilgili konumunun arananda
    hangi konum olabilecegini tahmin etmekdir
  • Ikinci amaç metinin bir an önce sonuna
    ulasmaktir
  • Arama öncesi islemler O(m) karmasikligindadir

7
Boyer-Moore Algoritmasi - II
  • Öncelikle aranan kelimedeki harflerin kaçinci
    konumda olduklari bulunur
  • Aranan kelimenin uzunlugu kadar atlanir
  • Metindeki mevcut konumdaki harf uyuyorsa
  • Bir önceki harfe bakilir
  • Uymuyorsa
  • Metinden alinan harfin arananda kaçinci harf
    olduguna bakilarak aranan boyundan bu sayi eksigi
    kadar ileri atlanir.

8
Boyer-Moore Algoritmasi - III
  • Uymuyorsa?
  • Aranan Zerrin
  • Metin Kerem ile Zerrini gördüm.
  • Ilk deneme
  • kerem ile Zerrin ...

Zerrin
Zerrin
9
Boyer-Moore Algoritmasi - IV
  • Kerem ile Zerrini gördüm

10
Boyer-Moore Algoritmasi - V
  • char search(char pat,char text,int n)
  • int i, j, k, m, skipMAXCHAR
  • m strlen(pat)
  • if( m0 ) return( text )
  • for( k0 kltMAXCHAR k ) skipk m
  • for( k0 kltm-1 k ) skippatk m-k-1
  • for( km-1 k lt n k skiptextk
    (MAXCHAR-1) )
  • for( jm-1, ik jgt0 texti patj
    j-- ) i--
  • if( j (-1) ) return( texti1 )
  • return( NULL )

11
Boyer-Moore Algoritmasi - V
  • Arama öncesi islem O(m)
  • En kötü durum
  • Metin aaaaaaaaabaa
  • Arananbaa
  • O(nm)
  • En iyi durum O(n/m)
  • Ortalama durumda O()

12
Kaynakça
  • Introduction Algorithms
  • Thomas H. Cormen, Charles R. Leisersen, ronald L.
    Rivest,
  • http//www-igm.univ-mlv.fr/lecroq/string/node14.h
    tml
  • http//www-lsi.upc.es/rbaeza/handbook/algs/7/713b
    .srch.c.html
  • http//www.cee.hw.ac.uk/alison/ds98/node78.html
  • http//www.cs.ucr.edu/jiang/cs141/string.pdf
Write a Comment
User Comments (0)
About PowerShow.com