9752256909

9752256909



przestawienia elementów, a insert może ich wykonywać nawet fł(n2), więc taka sytuacja może przemawiać za wyborem select.

W takiej sytuacji można też rozważyć użyteczność wersji insert operującej na kopiach kluczy i wskaźnikach do rekordów. Wskaźniki te służą do przestawienia rekordów zgodnie z otrzymaną poprzez sortowanie permutacją kluczy.

•    Stabilność. Czasami zależy nam, by rekordy o jednakowych kluczach pozostawały w tablicy wynikowej w takim samym względnym porządku w jakim były początkowo. O procedurach sortowania zachowujących taki porządek mówimy, że są stabilne. Łatwo zauważyć, że insert jest stabilny, a select nie.

•    Intensywność wykorzystania algorytmu. Jeśli algorytm ma być bardzo intensywnie wykorzystywany, np. jako część składowa większego systemu, wówczas nawet drobne usprawnienia mogą prowadzić do istotnej poprawy efektywności całego systemu. W tym przypadku warto zwrócić uwagę na możliwość dokonania takich usprawnień w algorytmach jak redukcja liczby rozkazów w najbardziej wewnętrznych pętlach algorytmu, możliwość zastosowania szybkich operacji maszynowych, itp... Warto też duży nacisk położyć na porównanie empiryczne algorytmów.

Na zakończenie jeszcze uwaga o złożoności problemów. Definiuje się ją jako złożoność najlepszego algorytmu rozwiązującego dany problem. Zwykle jest ona dużo trudniejsza do określenia niż złożoność konkretnego algorytmu.

Załóżmy, że chcemy określić złożoność problemu V. Skonstruowanie algorytmu A rozwiązującego V pozwala nam jedynie na sformułowanie wniosku, że złożoność V jest nie większa niż złożoność A (mówimy, że algorytm A wyznacza granicą górną na złożoność V). Aby dokładnie wyznaczyć złożoność V należy ustalić jeszcze granicę dolną, a więc wykazać, że żaden algorytm nie jest w stanie rozwiązać V szybciej. Twierdzenia tego typu są bardzo trudne i stanowią prawdziwe wyzwanie dla naukowców. W trakcie wykładu zapoznamy się tylko z kilkoma przykładami takich twierdzeń i to tylko dla ograniczonego (w stosunku do maszyny RAM) modelu obliczeń.

4 Notacja dla rzędów funkcji

Oznaczenia:

IZ* - zbiór nieujemnych liczb rzeczywistych,

1Z+ - zbiór dodatnich liczb rzeczywistych, analogiczne oznaczenia dla Af.

Definicja 1 Niech f : Af —»IZ* będzie dowolną funkcją.

0(f(n)) = {t: Af -» 71* | 3c€tt+3noeA/-V„>no t(n) < cf(n).}

• S2(/(n)) = {t : AfIZ* | 3cG-£+3noGArVn>no t(n) > c/(n).}

. ©(/(»)) = 0(/(n))nn(/(n)).

UWAGA: Czasami Q(f(n)) jest definiowana jako {t: Af —* TZ* \ 3c€ft+Vno£y3n>rio t(ń) > cf(n).}

6



Wyszukiwarka

Podobne podstrony:
PICT0216 Parametrem badania urodynamicznego, który może przemawiać za rozpoznaniem tzw. cewki niskoc
P1010769 J. FUNDAMENTY to stopę można nawet wykonać z kamienia budowlanego. Ody względy ekonomiczne
PICT0216 Parametrem badania urody nam icznego, który może przemawiać za rozpoznaniem tzw. cewki nisk
184 Marek Dńewiecki może wątpić w możliwość i celowość ich respektowania a nawet w ich istnienie.
22230 skanuj0220 (4) Korpusy łożysk ślizgowych poprzecznych są wykonywane jako oddzielne elementy ma
skanuj0009 (45) gdzie ktoś może mieszkać i z kim przestawać. Określała ona wymowę, gestykulację, żar
84198 okladka (42) W Polsce może ich być nawet 2,5 tysiąca! Do tej pory „FM” ujawniły7 KSIĘŻY PEDOFI
Spis treści 4. Zadania i kompetencje Prezesa WUG oraz sposób ich wykonywania........................
Magazyn6101 Goryczko, albo kółć ziemna. 81 noścl ich poznaie, a nawet i ból zębów z tćy przyczyn

więcej podobnych podstron