PHP - Imposta funzioni
Set è una sequenza di valori univoci e questa implementazione può utilizzare la stessa tabella hash di Ds \ Map in cui i valori vengono utilizzati come chiavi e il valore mappato viene ignorato.
Punti di forza
- I valori possono essere di qualsiasi tipo, inclusi gli oggetti.
- Supporta la sintassi degli array (parentesi quadre).
- L'ordine di inserzione viene mantenuto.
- Libera automaticamente la memoria allocata quando le sue dimensioni si riducono abbastanza.
- add (), remove () e contains () sono tutti O (1).
Debolezze
- Non supporta push (), pop (), insert (), shift () o unshift ().
- get () è O (n) se ci sono valori cancellati nel buffer prima dell'indice a cui si accede, O (1) altrimenti.
Sinossi della classe
Ds\Set implements Ds\Collection {
/* Constants */
const int MIN_CAPACITY = 16 ;
/* Methods */
public void add([ mixed $...values ] )
public void allocate( int $capacity )
public int capacity( void )
public void clear( void )
public bool contains([ mixed $...values ] )
public Ds\Set copy( void )
public Ds\Set diff( Ds\Set $set )
public Ds\Set filter([ callable $callback ] )
public void first( void )
public mixed get( int $index )
public Ds\Set intersect( Ds\Set $set )
public bool isEmpty( void )
public string join([ string $glue ] )
public void last( void )
public Ds\Set merge( mixed $values )
public mixed reduce( callable $callback [, mixed $initial ] )
public void remove([ mixed $...values ] )
public void reverse( void )
public Ds\Set reversed( void )
public Ds\Set slice( int $index [, int $length ] )
public void sort([ callable $comparator ] )
public Ds\Set sorted([ callable $comparator ] )
public number sum( void )
public array toArray( void )
public Ds\Set union( Ds\Set $set )
public Ds\Set xor( Ds\Set $set )
}
Costanti predefinite
Ds \ Set :: MIN_CAPACITY
| Suor n | Descrizione della funzione |
|---|---|
| 1 | Questa funzione può allocare memoria sufficiente per la capacità richiesta. |
| 2 | Questa funzione può aggiungere valori al set. |
| 3 | Questa funzione può restituire la capacità corrente. |
| 4 | Questa funzione può rimuovere tutti i valori. |
| 5 | Questa funzione può creare una nuova istanza. |
| 6 | Questa funzione può determinare se l'insieme contiene tutti i valori. |
| 7 | Questa funzione può restituire una copia superficiale del set. |
| 8 | Questa funzione può essere utilizzata per contare il numero di valori presenti in un set e viene anche definita dimensione di un'istanza di set. |
| 9 | Questa funzione può creare un nuovo set utilizzando i valori che non sono in un altro set. |
| 10 | Questa funzione può creare il nuovo set utilizzando un chiamabile per determinare quali valori includere. |
| 11 | Questa funzione può restituire il primo valore in un set. |
| 12 | Questa funzione può restituire il valore in un determinato indice. |
| 13 | Questa funzione può creare un nuovo insieme intersecando i valori con un altro insieme. |
| 14 | Questa funzione può restituire se il set è vuoto. |
| 15 | Questa funzione può unire tutti i valori insieme come una stringa. |
| 16 | Questa funzione può restituire una rappresentazione che può essere convertita in JSON. |
| 17 | Questa funzione può restituire l'ultimo valore in un set. |
| 18 | Questa funzione può restituire il risultato dell'aggiunta di tutti i valori dati a un set. |
| 19 | Questa funzione può ridurre un set a un valore singolo utilizzando la funzione di callback. |
| 20 | Questa funzione può rimuovere tutti i valori dati dall'insieme. |
| 21 | Questa funzione può invertire un set sul posto. |
| 22 | Questa funzione può restituire una copia inversa. |
| 23 | Questa funzione può restituire il sottoinsieme di un determinato intervallo. |
| 24 | Questa funzione può ordinare un set sul posto. |
| 25 | Questa funzione può restituire una copia ordinata. |
| 26 | Questa funzione può restituire la somma di tutti i valori in un insieme. |
| 27 | Questa funzione può convertire un set in un array. |
| 28 | Questa funzione può creare un nuovo set utilizzando i valori dell'istanza corrente e un altro set. |
| 29 | Questa funzione può creare un nuovo set utilizzando i valori nell'istanza corrente e un altro set ma non in entrambi. |
