Ho letto che l'operazione di inserimento in un set richiede solo il tempo log (n). Come è possibile?complessità del set :: inserire
Per inserire, per prima cosa abbiamo trovato la posizione nell'array ordinato in cui il nuovo elemento deve sedersi. Usando la ricerca binaria prende log (n). Quindi per inserire in quella posizione, tutti gli elementi che succedono dovrebbero essere spostati di un posto a destra. Ci vuole un'altra volta.
Il mio dubbio si basa sul fatto che il set è implementato come una matrice e gli elementi sono memorizzati in ordine. Per favore correggimi se la mia comprensione è sbagliata.
Si presume che 'std :: set' sia implementato come array ordinato. Perché? –
Tratto da cppreference: * Gli insiemi sono solitamente implementati come alberi rosso-nero. * – chris
@KonradRudolph: Ora so solo che i set sono implementati usando l'albero rosso-nero. Grazie chris – bibbsey