Ćwiczenia z algorytmów zestaw XI grupa R1IS2, zajęcia 10.06.2016

Transkrypt

Ćwiczenia z algorytmów zestaw XI grupa R1IS2, zajęcia 10.06.2016
Ćwiczenia z algorytmów zestaw XI
grupa R1IS2, zajęcia 10.06.2016, sala 1, godz. 12:10-13:40
1. Napisz algorytm, który dla danego węzła w drzewie poszukiwań binarnych
znajdzie jego poprzednika.
2. Korzystając z algorytmu Left-Rotate, napisz algorytm Right-Rotate, który dla
drzewa BST wykona rotację w prawo i zaprezentuj jego działanie na
przykładzie.
3. Zilustruj ciąg wstawień elementów o kluczach 5, 28,19, 15, 20, 33, 12, 17, 10 do
tablicy z haszowaniem, wykorzystując do rozwiązywania kolizji metodę
łańcuchową. Przyjmij, że tablica zawiera 9 pozycji, a h(k) = k mod 9 jest funkcją
haszującą.
4. Rozważmy tablicę z haszowaniem o rozmiarze m=1000 oraz funkcję haszującą
h(k) = floor( m(kA mod 1)) dla A = (sqrt(5) – 1)/2. Oblicz pozycje na które trafią
klucze 61, 62, 63, 64 i 65.
5. Do tablicy z haszowaniem o długości m = 11 wstawiamy klucze 10, 22, 31, 4,
15, 28, 17, 88, 59 używając adresowania otwartego do rozwiązywania kolizji
oraz funkcji haszującej h'(k) = k mod m. Zilustruj wynik wstawiania tych
elementów, jeśli użyjemy: adresowania liniowego, adresowania kwadratowego
c1 = 1 i c2 = 3 oraz haszowania dwukrotnego z funkcją h2(k) = 1+ k mod (m-1).