Implementacja algorytmów w języku Java

Wiesz już, czym są liderliderlider oraz idolidolidol.

Jak jednak zaimplementować algorytm wyszukiwania idola i lidera w języku Java?

R1bsiotbB0oo61
Wysłuchaj nagrania abstraktu i zastanów się, czego jeszcze chciałbyś się dowiedzieć w związku z tematem lekcji.
Ćwiczenie 1

Algorytm znajdowania lidera wykorzystywany jest w Polsce podczas wyborów prezydenckich (jeśli jednak w pierwszej turze nie zostaje wybrany lider, następuje druga tura wyborów). W pewnej szkole przeprowadzono wybory przewodniczącego samorządu uczniowskiego, wykorzystując ten sam model. Napisz program, który wykorzysta algorytm znajdowania lidera do wyłonienia nowego przewodniczącego samorządu uczniowskiego.

Przetestuj działanie programu dla następujących wyników, zawierających n = 105 głosów:

Linia 1. oddaneGlosy znak równości otwórz nawias klamrowy cudzysłów DD cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek. Linia 2. cudzysłów CC cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów CC cudzysłów przecinek. Linia 3. cudzysłów CC cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów CC cudzysłów przecinek. Linia 4. cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów BB cudzysłów przecinek. Linia 5. cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek. Linia 6. cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek. Linia 7. cudzysłów AA cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek. Linia 8. cudzysłów CC cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek. Linia 9. cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek. Linia 10. cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów AA cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów przecinek. Linia 11. cudzysłów DD cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów BB cudzysłów przecinek. Linia 12. cudzysłów DD cudzysłów przecinek cudzysłów CC cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów DD cudzysłów przecinek cudzysłów BB cudzysłów przecinek cudzysłów CC cudzysłów zamknij nawias klamrowy średnik.

gdzie:

Linia 1. AA – Adam Angielski. Linia 2. BB – Bartosz Brytyjski. Linia 3. CC – Celina Chińska. Linia 4. DD – Damian Duński.

Specyfikacja problemu:

Dane:

  • n – liczba naturalna; liczba oddanych głosów

  • oddaneGlosyn-elementowy zbiór głosów oddanych na poszczególnych kandydatów; zbiór łańcuchów znaków

Wynik:

Na standardowym wyjściu wyświetlane są imię i nazwisko lidera w zbiorze oddaneGlosy, jeśli lider istnieje; w przeciwnym wypadku należy wyświetlić komunikat „Brak lidera”.

R1e9TxWdihC4F
Wymyśl pytanie na kartkówkę związane z tematem materiału.
Ćwiczenie 2

Napisz program znajdujący idola w zbiorze n osób na podstawie tablicy znajomości. Osoby numerowane są od 0 do n - 1. Przetestuj poprawność rozwiązania dla n = 4 osób oraz następującej tablicy znajomości:

Linia 1. tablicaZnajomosci znak równości otwórz nawias klamrowy. Linia 2. otwórz nawias klamrowy false przecinek true przecinek true przecinek false zamknij nawias klamrowy przecinek. Linia 3. otwórz nawias klamrowy false przecinek false przecinek true przecinek false zamknij nawias klamrowy przecinek. Linia 4. otwórz nawias klamrowy false przecinek false przecinek false przecinek false zamknij nawias klamrowy przecinek. Linia 5. otwórz nawias klamrowy true przecinek true przecinek true przecinek false zamknij nawias klamrowy. Linia 6. zamknij nawias klamrowy średnik.

Specyfikacja problemu:

Dane:

  • n – liczba naturalna większa od 1

  • tablicaZnajomosci[i][j] – tablica wartości logicznych; zawiera informację o tym, czy osoba o numerze i zna osobę o numerze j; przy założeniu, że: j, i < n

Wynik:

Na standardowym wyjściu wyświetlany jest komunikat „Idolem jest osoba numer X”, jeśli idol istnieje w danym zbiorze n osób, lub „Idol nie istnieje” w przeciwnym wypadku. 

RbGPn2CT8XG50
Wymyśl pytanie na kartkówkę związane z tematem materiału.

Słownik

idol
idol

w grupie n osób idolem nazywamy osobę, która znana jest przez każdą z pozostałych n - 1 osób, natomiast sama nie zna nikogo

lider
lider

element n‑elementowego zbioru, który występuje w nim więcej niż n 2 razy