Pagini recente » Diferente pentru blog/interviu-mihai-patrascu-partea-intai intre reviziile 8 si 7 | Diferente pentru ciclu-hamiltonian-in-graf-dens intre reviziile 7 si 6 | Diferente pentru utilizator/jupanu92 intre reviziile 12 si 13 | Diferente pentru problema/gugustiuc intre reviziile 13 si 12 | Diferente pentru problema-majoritatii-votului intre reviziile 3 si 2
Nu exista diferente intre titluri.
Diferente intre continut:
Un algoritm naiv ar verifica pentru fiecare element din şir de câte ori mai apare acesta. O astfel de rezolvare are complexitatea O(n^2) ca timp si O(n) ca memorie.
== code(cpp) |
int bruteForceMajority(int n, int[] a)
for (int i = 0; i < n; i++) {
int nr = 0;
}
return -1;
}
==
Dacă numerele din şir aparţin unei mulţimi {1, 2, ... k} iar acest k este mic comparativ cu n, atunci putem să îmbunătăţinm ideea de mai devreme şi să folosim un şir auxiliar b, unde b[x] va număra de câte ori apare un număr x în şirul nostru. Această soluţie are complexitate O(n + k) ca timp şi O(n + k) ca spaţiu.
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.