Теория от примерни изпити Динамично програмиране. Анализ и примери



страница5/6
Дата22.01.2024
Размер150.76 Kb.
#120049
ТипРешение
1   2   3   4   5   6
Теория-от-примерни-изпити
Обхождане на дърво и граф.

  • При обхождане на дърво или граф се посещават всички възли в тази структура по определен начин. Има няколко начина за обхождане на дърво или граф:

  1. Преход най-отгоре-надолу (pre-order traversal).

  2. Преход отляво-надясно (in-order traversal).

  3. Преход най-отдолу-нагоре (post-order traversal)

  4. Преход най-отгоре-надолу (pre-order traversal) обхожда възела най-отгоре, след което посещава лявото поддърво и правото поддърво. Това се изпълнява рекурсивно за всички поддървета.

  5. Преход отляво-надясно (in-order traversal) обхожда лявото поддърво, след което посещава възела и правото поддърво. Това се изпълнява рекурсивно за всички поддървета.

  1. Хеш-функции с пряко адресиране: линейно прохождане, функции от квадратичен тип, двойно хеширащи функции.

  • Хеш-функциите с пряко адресиране са метод за решаване на колизии при хеширане, където всеки елемент се позиционира директно във вектора (таблицата) с хеш стойности. В случай на колизия (когато два елемента имат еднакъв хеш), могат да се използват различни техники за определяне на новата позиция. Три от тези техники са линейно прохождане, функции от квадратичен тип и двойно хеширане.

  • Линейно прохождане:

При линейното прохождане, ако срещнем колизия, търсим следващата свободна позиция в таблицата, като я намираме последователно. Формулата за промяна на позицията е: h′(k,i)=(h(k)+i)mod m, където h(k) е хеш стойността, m е размерът на таблицата, i е броят на пробваните позиции.

  • Функции от квадратичен тип:

При функциите от квадратичен тип, формулата за промяна на позицията става: ℎ′(k,i)=(ℎ(k)+c1i+c2i2) mod m, където c1 и c2 са константи, i е броят на пробваните позиции, и m е размерът на таблицата.
1   2   3   4   5   6




©obuch.info 2024
отнасят до администрацията

    Начална страница