Sortowanie i mediana dla małych liczb

Sortowanie i mediana dla małych liczb
  • Rejestracja: dni
  • Ostatnio: dni
0
  1. Udowodnij, że do scalania dwóch ciągów uporządkowanych długości 2 i 5 potrzeba i wystarcza 5
    porównań.
  2. Wykaż, że każdy algorytm znajdujący medianę w zbiorze 5-elementowym wykona w
    pesymistycznym przypadku co najmniej 5 porównań. Zaproponuj algorytm dokonujący tego
    za pomocą co najwyżej 6 porównań.

Proszę o podpowiedzi ew. rozwiązanie w formie ukrytej.

Westen
  • Rejestracja: dni
  • Ostatnio: dni
0

Podpowiedź: Weź kartę, długopis i rozrysuj to sobie. Prostszej metody nie znam.
Ukryte rozwiazanie: www.google.pl

  • Rejestracja: dni
  • Ostatnio: dni
0

A próbowałeś sam? ;>

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0
  1. Porównujemy tylko "głowy" ciągów między sobą, następnie usuwamy mniejszą głowę i wrzucamy do ciągu wynikowego. Siłą rzeczy każde porównanie sprawia że do ciągu wynikowego leci jedna liczba. Kiedy jeden z ciągów się skończy, możemy całą resztę przepiąć. Pesymistycznie w takiej sytuacji musimy przepisać cały jeden, dłuższy ciąg.
Vardamir
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
0

Odnośnie drugiego, możesz wzorować się na sortowaniu pięciu liczb za pomocą co najwyżej siedmiu porównań.
http://users.uj.edu.pl/~ufkapano/algorytmy/lekcja11/sort3.html

  • Rejestracja: dni
  • Ostatnio: dni
0

Brzmi sprytnie, ale dla ciągów (a1, ..., a5), (b1, b2) wyszło mi 6 porównań, a ma być max 5.
a1 < a2 < b1 < a3 < a4 < a5 < b2

a1 < b1. Wpisz a1.
a2 < b1. Wpisz a2.
b1 < a3. Wpisz b1.
a3 < b2. Wpisz a3.
a4 < b2. Wpisz a4.
a5 < b2. Wpisz a5.

  • Rejestracja: dni
  • Ostatnio: dni
0

@Vardamir
Czyli sortujemy 4 liczby używając 3 porównań a następnie próbujemy "wstawić" 4. liczbę do posortowanego ciągu (zaczynając od środka), na końcu zwracamy a[2] (zakładam indeksowanie tablicy od 0).

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.