Mapa strony
Algorytm KMP (Knutha, Morrisa, Pratta)
Pamietamy, że algorytm „naiwny” ma swoje wady. Podczas porównywania kolejnych symboli wzorca z symbo
Algorytm „naiwny” (brute-force)
Jest to najprostszy algorytm wyszukiwania wzorca. Algorytm tego typu jest bardzo prosty zarówno w zr
Słowniki
Jedna z kluczowych grup problemów postawionych przed programistami jest wydajne poszukiwanie konkret
Przeszukiwanie binarne
W sytuacji, gdy dane są w pewien sposób uporządkowane (na przykład posortowane), znacznie bardziej u
Przeszukiwanie liniowe
Najbardziej oczywistym i zarazem naturalnym sposobem wyszukiwania danych jest przeszukiwanie liniowe
Przeszukiwanie
Problem polegający na przeszukiwaniu (a raczej poszukiwaniu) pewnego przedmiotu lub informacji jest
Sortowanie przez scalanie - MergeSort
Zbliżonym algorytmem do metody QuickSort jest sortowanie przez scalanie (ang. MergeSort). Jego idea
Porównanie efektywnosci elementarnych metod sortowania
Wstkie trzy omówione algorytmy charakteryzują się złożonością obliczeniowa O(n2) – z tego powodu pro
BubbleSort
Sortowanie babelkowe (czasem spotykane jest inne określenie – sortowanie przez zamianę) jest trzecim
InsertionSort
Drugim algorytmem sortowania elementarnego jest sortowanie przez wstawianie. Metoda ta jest nawet cz
SelectionSort
Jest to prosty i zarazem klasyczny rodzaj sortowania. Zakładamy, że mamy pewien zbiór danych o liczn
Elementarne algorytmy sortowania
Większość projektów komputerowych nie mogłoby funkcjonować bez użycia algorytmów sortowania. Sortowa
Stos liczbowy - obliczanie wartosci wyrażeń zapisanych w ONP
Wiemy już, jak przetworzyć zapis w notacji konwencjonalnej do postaci ONP. Za chwilę dowiemy się, ja
Stos znakowy - tworzenie odwrotnej notacji polskiej (ONP)
Jak już wcześniej wspominaliśmy, stos jest taką strukturą danych, która skutecznie pomaga zwiększyć
Stos, czyli struktura LIFO
Stos (ang. stack) jest jedną z najważniejszych struktur danych używanych w algorytmach komputerowych
Kolejka, czyli struktura FIFO
Kolejka (ang. queue) jest jednym z podstawowych abstrakcyjnych typów danych. Oprócz kolejki równie w
Metody heurystyczne
Ostatnia grupa metod, którą chcielibyśmy omówić, są metody heurystyczne (heurystyki) - słowa te poch
Algorytmy z powrotami
Czasem może nam się zdarzyć, że natrafimy na problem, którego rozwiązywanie bedzie najefektywniejsze
Algorytmy zachłanne
Rozwiązywanie zadań przy zastosowaniu algorytmów zachłannych (ang. greedy algorithms) polega na bard
Programowanie dynamiczne cz. 2
Najczęściej rozwiązania podproblemów w programowaniu dynamicznym są zapisywane w pamięci komputera (
Programowanie dynamiczne
Programowanie dynamiczne (optymalizacja dynamiczna, PD) jest strategią tworzenia algorytmów przeznac
Główne zalety algorytmów D&C
Spróbujmy je wymienić: są to wydajne metody do rozwiązywania złożonych problemów, które mogą być roz
Metody typu „dziel i zwycieżaj”
Algorytmy z tej grupy (ang. divide and conquer –D&C) zaliczają się do najbardziej skutecznych metod
Przeglad metod konstruowania algorytmów
Jak doskonale wiemy, tworzenie projektów informatycznych opiera się w dużej mierze na formułowaniu i
Funkcje i procedury
Rozróżniamy dwa typy podprogramów: funkcje, które zwracaja jakas wartosc poprzez swoja nazwe i wywo
Instrukcje proste, typy zmiennych
Instrukcje podstawienia zapisywane są ze znakiem równości = pełniącym rolę operatora przypisania
Przeglad algorytmów i elementarnych struktur danych
Zaczniemy od pokazania pseudokodu, za pomocą którego będziemy Wam prezentować algorytmy w
Wyświetlanie obrazu na pełnym ekranie
Do wyświetlenia obrazu na pełnym ekranie wykorzystamy osobne okno. W tym celu musimy z menu głównego
Przesuwanie i zoom
Do wygodnego przeglądania obrazu konieczna jest możliwość powiększenia oraz przesuwania powiększoneg
Kadrowanie
Chcąc wykadrować obraz musimy mieć możliwość narysowania prostokąta określającego nowe krawędzie
Obsługa kółka myszy – zdarzenie OnMouseWheel
Komponent Image obsługuje standardowe zdarzenia myszy, z których przydadzą się OnMouseMove
Komponenty do przeglądania katalogów
Poznaliście już okna dialogowe służące do otwierania plików. Jednak przy przeglądaniu dużej ilości
Zdarzenia do obsługi ruchu myszy
Przy rysowaniu na płótnie Canvas komponentu PaintBox, pomocne będą zdarzenia OnMouseDown,
Komponent PaintBox
W celu narysowania dowolnego rysunku na PaintBox\ie, najprościej odwołać się do właściwości C
Analiza liczby znaków w wyrazie
Celem tej analizy jest ustalenie najczęściej spotykanej liczby znaków w wyrazie. Efektem analizy po
Prezentacja statystyki
W celu zaprezentowania wyników analizy statystycznej tekstu programista może wykorzystać k
Algorytm podziału zmiennej
Przeprowadzenie większości analiz wymaganych w projekcie wymagało będzie podziału dłuższych łańcuchó
Lista łańcuchów (StringList)
Klasa TStringList jest wyspecjalizowaną klasą służącą do przechowywania łańcuchów teksto
Zarządzanie otwartymi dokumentami
Nie odpowiedzieliśmy jeszcze na najważniejsze pytanie, czyli jak zarządzać kilkoma otwartymi doku
Obsługa wielu plików tekstowych
Większość edytorów tekstu pozwala na jednoczesną pracę nad kilkoma dokumentami jednocześni
Komponenty do wyświetlenia pliku tekstowego
Do wyświetlenia i edycji zawartości pliku tekstowego można użyć jednego z dwóch komponent&
Bascomania
Witamy na stronie bascomania. Na stronach naszego serwisu zamieszczamy internetowe kursy z pr