Este programa em Java permite a leitura de um arquivo CSV, desde que o caminho do arquivo seja fornecido. Ele ordena os candidatos com base na nota (score) e, em caso de empate, utiliza a data de nascimento para definir a ordem.
O Insertion Sort é um algoritmo de ordenação que se destaca por sua eficiência em comparação a outros métodos, como o Bubble Sort e o Selection Sort. Sua abordagem mais inteligente e adaptativa para a ordenação o torna uma escolha ideal para esta tarefa.
Para a leitura do arquivo CSV, utilizamos as classes BufferedReader e FileReader do Java. O caminho do arquivo é passado como parâmetro, permitindo que o programa acesse e processe os dados de forma eficiente.
A comparação entre os candidatos é implementada no método compareTo da classe Candidate. Este método retorna um valor inteiro que indica a ordem dos candidatos. Se as notas (scores) forem diferentes, a ordenação é feita com base nelas. Caso contrário, a data de nascimento é utilizada para resolver empates.
A classe Candidate possui atributos que correspondem às colunas do arquivo CSV. Durante a leitura, cada linha é transformada em uma instância da classe Candidate. O método split é utilizado para separar os dados por vírgula, resultando em um vetor que é passado para o construtor. Esses objetos são então armazenados em um array, permitindo a aplicação do algoritmo Insertion Sort.




