Você pode usar qualquer uma das opções, só vai ter que ajustar seu código pra cada caso. E depende também se o material indica alguma solução específica, ou se deixa à seu critério.
Em termos gerais, a maneira mais simples seria usar ArrayList. Você pode tanto armazenar instâncias de uma classe Pessoa, que tem os atributos nome, idade e altura, quanto armazenar essas informações em três Arraylists diferentes. O Arraylist não tem tamanho fixo, então você precisa controlar quantos elementos existem antes de realizar as operações.
Também é possível usar um vetor de Pessoa (ou 3, um para cada atributo), com tamanho fixo em 10. Nesse caso, você precisa controlar não só quantos elementos, mas qual a próxima posição vazia ao realizar operações de inserir, além de mover os elementos quando faz uma remoção.
Ter 10 instâncias de Pessoa é possível, mas acaba gerando um monte de ifs pra saber qual está preenchida ou não, em qualquer uma das operações que você quiser realizar. Eu não recomendo.
Abraço.