Algoritmo parallelo per trovare il massimo nel


11

Ci è stato presentato in classe un algoritmo per trovare il massimo in un array in parallelo nella complessità temporale con computer.n 2O(1)n2

L'algoritmo era:

Dato un array A di lunghezza n:

  1. Crea un array di flag B di lunghezza n e inizializzalo con zero con computer.n
  2. Confronta ogni 2 elementi e scrivi 1 in B nell'indice del minimo con computer.n2
  3. trova l'indice con 0 in A con computer.n

Il docente ci ha preso in giro che potrebbe essere fatto con computer e con complessità temporale. registronnlognlogn

Dopo aver pensato un sacco non sono riuscito a capire come farlo. Qualche idea?

Risposte:


9

n/lognlognlognn/lognlogn

n1+ϵϵ>0


O(1)O(logn)

Ω(n)
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.