In primo luogo, non obbedisce al principio Open / Closed, perché non sarà possibile modificare nulla in fase di runtime in un metodo statico.
Non so se obbedisce al principio di Responsabilità Unica, perché non so se implementa o delega tutto il suo lavoro. Se lo implementa, non obbedisce a questo principio.
EDIT: se quel metodo statico è all'interno della classe della struttura dati, sicuramente non obbedisce a SRP. La classe dati dovrebbe non conoscere o preoccuparsi dei suoi vari tipi di usi.
Il principio di sostituzione di Liskov non è un fattore dato che è solo una classe, ed è un metodo statico.
Anche la segregazione dell'interfaccia non si applica qui.
Inversione di dipendenza è discutibile qui, perché se non puoi passare un delegato a questa funzione o stai utilizzando un linguaggio dinamico, stai facendo in modo che ognuno dei tuoi clienti dipenda da questa sola implementazione di questa funzionalità.
Quindi, tutto sommato, no, non lo è.