Pagini recente » Diferente pentru problema/misiune intre reviziile 15 si 34 | Profil Mihai_Ortelecan | Istoria paginii utilizator/baiatu.daniela | Interviu cu Mihai Patrascu - partea a doua | Diferente pentru problema-majoritatii-votului intre reviziile 2 si 3
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.