http://pl.wikipedia.org/wiki/Tablica_mieszaj%C4%85ca albo szybki wstęp: Słowniki: Podstawowe operacje: Member(x,A) - ma jako argumenty słownik A oraz obiekt x. Zwraca wartość true, gdy obiekt należy do słownika i false w przeciwnym wypadku. Insert(x,A) – Czyni x elementem A. Jeśli x już jest w A, to Insert nic nie zmienia. Delete(x,A) – Usuwa x z A. MAKENULL(x,A) – Czyni A słownikiem pustym. Jak można zaimplementować słowniki? • Jako listy posortowane • Jako listy nieposortowane • Jako wektory bitowe (przy założeniu, że elementy są z przedziału (1,..,n) HASZOWANIE • Ważną implementacją słowników jest haszowanie. • Haszowanie daje średnio stały czas dostępu do elementu słownika • W najgorszym przypadku daje czas proporcjonalny do rozmiaru zbioru • T ablica mieszająca (tablica haszująca) to struktura danych służąca do przechowywania informacji, w taki sposób, aby możliwy był do nich szybki dostęp . • Odwołania do przechowywanych obiektów dokonywane są na pods
Napisać program wypisujący identyfikatory UID, GID, PID, PPID i PGID dla danego procesu. Wywołać funkcję fork 3 razy (np. w pętli) i wypisać powyższe identyfikatory dla wszystkich procesów potomnych. Wstawić funkcję sleep tak, aby procesy pojawiały się na ekranie grupowane pokoleniami od najstarszego do najmłodszego. Na podstawie wyników programów narysować "drzewo genealogiczne" tworzonych procesów (z zaznaczonymi identyfikatorami). BARDZO PROSZĘ O KOPIOWANIE Z GŁOWĄ, JEŚLI JUŻ KTOŚ MUSI(ALE RADZĘ PISAĆ SAMEMU), BO ZA PLAGIATY NA UJ WYWALAJĄ Z KURSU I A JAK OPIEKUN SIEZIRYTUJE TO I ZE STUDIÓW :)
Nie rozwodząc się nad tym czym jest lista, bo to każdy powinien wiedzieć, przejdźmy do opisu funkcji: First() - zwraca pozycję elementu pierwszego -(indeks 0) END() - zwraca pozycję za ostatnim elementem (czyli last+1) Next(p) -zwraca indeks następnego elementu po p (czyli p+1): -jeśli istnieje element następny, to zwróć jego indeks -jeśli nie istnieje element następny, to zwróć -1 Previous(p) - zwraca indeks poprzedniego elementu w stosunku do p (czyli p-1) -jeśli istnieje element poprzedni, to zwróć jego indeks -jeśli nie istnieje element poprzedni, to zwróć -1 Insert(x,p) - wstawia x do komórki o numerze p ( o ile się da): -sprawdź, czy jest miejsce w tablicy -sprawdź, czy pozycja p jest poprawna -przesuń elementy w tablicy, aby komórka p była pusta -wstaw x do komórki p -zwiększ last -zwróć true gdy operacja wstawiania się powiedzie, false wpp Delete(p) - usuwa element z komórki o numerze p: -sprawdź, czy pozycja p jest poprawna -przesuń elementy w "górę"
Komentarze
Prześlij komentarz