Skip to content

Instantly share code, notes, and snippets.

@Pharaoh00
Created May 13, 2020 15:05
Show Gist options
  • Save Pharaoh00/5e6f6aca796672da0e4c1dedd31d667a to your computer and use it in GitHub Desktop.
Save Pharaoh00/5e6f6aca796672da0e4c1dedd31d667a to your computer and use it in GitHub Desktop.
public class Aluno {
String nome;
int matricula;
public Aluno(String nome, int matricula) {
this.nome = nome;
this.matricula = matricula;
}
public String getNome() {
return this.nome;
}
public int getMatricula() {
return this.matricula;
}
public static void BBSortClassicoAlunoNome(Aluno[] vetor) {
int i, j;
//String temp;
Aluno temp;
for (i = 0; i < vetor.length - 1; i++)
for (j = 0; j < vetor.length - 1; j++)
if (vetor[j].nome.compareTo(vetor[j + 1].nome) > 0) {
temp = vetor[j];
vetor[j] = vetor[j + 1];
vetor[j + 1] = temp;
}
}
public static void BBSortClassicoAlunoMatricula(Aluno[] vetor) {
int i, j;
Aluno temp;
for (i = 0; i < vetor.length - 1; i++)
for (j = 0; j < vetor.length - 1; j++)
if (vetor[j].matricula > vetor[j + 1].matricula) {
temp = vetor[j];
vetor[j] = vetor[j + 1];
vetor[j + 1] = temp;
}
}
public static void SelecaoAlunoNome(Aluno[] vetor) {
int i, j, min;
Aluno aux;
for (i = 0; i < vetor.length - 1; i++) {
// Procura o menor elemento a partir
// da i-ésima posição do vetor. min = i
// pois consideraremos no início que o
// i-ésimo elemento é o menor do subvetor
min = i;
for (j = i + 1; j < vetor.length; j++)
if (vetor[j].nome.compareTo(vetor[min].nome) < 0)
min = j;
// Troca o menor elemento de posição com
// o elemento da posição i
aux = vetor[min];
vetor[min] = vetor[i];
vetor[i] = aux;
}
}
public static void SelecaoAlunoMatricula(Aluno[] vetor) {
int i, j, min;
Aluno aux;
for (i = 0; i < vetor.length - 1; i++) {
// Procura o menor elemento a partir
// da i-ésima posição do vetor. min = i
// pois consideraremos no início que o
// i-ésimo elemento é o menor do subvetor
min = i;
for (j = i + 1; j < vetor.length; j++)
if (vetor[j].matricula < vetor[min].matricula)
min = j;
// Troca o menor elemento de posição com
// o elemento da posição i
aux = vetor[min];
vetor[min] = vetor[i];
vetor[i] = aux;
}
}
public static void InsercaoAlunoNome(Aluno[] vetor) {
int i, j;
Aluno v;
for (i = 1; i < vetor.length; i++) {
v = vetor[i];
j = i;
while ((j > 0) && vetor[j - 1].nome.compareTo(v.nome) > 0) {
vetor[j] = vetor[j - 1];
j--;
}
vetor[j] = v;
}
}
public static void InsercaoAlunoMatricula(Aluno[] vetor) {
int i, j;
Aluno v;
for (i = 1; i < vetor.length; i++) {
v = vetor[i];
j = i;
while ((j > 0) && (vetor[j - 1].matricula > v.matricula)) {
vetor[j] = vetor[j - 1];
j--;
}
vetor[j] = v;
}
}
@Override
public String toString() {
// Metodo override o "print" padrão para mostrar os elementos da classe.
return String.format("Nome: %s - Matricula: %d", this.nome, this.matricula);
}
}
// Chamada da Classe
// Exercicio 5
public void exercicioCinco() {
Aluno[] alunos = new Aluno[10];
alunos[0] = new Aluno("Hamon-Rá", 657139);
alunos[1] = new Aluno("Maria", 454545);
alunos[2] = new Aluno("Joao", 171717);
alunos[3] = new Aluno("Gustavo", 050505);
alunos[4] = new Aluno("Daniel", 999999);
alunos[5] = new Aluno("Julia", 007100);
alunos[6] = new Aluno("Ana", 232925);
alunos[7] = new Aluno("Roberta", 333187);
alunos[8] = new Aluno("Henrique", 555937);
alunos[9] = new Aluno("Amanda", 121921);
System.out.println("-- Todos os alunos --");
for (Aluno i : alunos)
System.out.println(i);
System.out.println("-- Alunos ordenados por Nome --");
System.out.println("-- BubbleSort Classico -- ");
Aluno[] vetBubbleClassicoNome = alunos;
Aluno.BBSortClassicoAlunoNome(vetBubbleClassicoNome);
for (Aluno i : vetBubbleClassicoNome)
System.out.println(i);
System.out.println("-- Alunos ordenados por Matricula --");
System.out.println("-- BubbleSort Classico -- ");
Aluno[] vetBubbleClassicoMatricula = alunos;
Aluno.BBSortClassicoAlunoMatricula(vetBubbleClassicoMatricula);
for (Aluno i : vetBubbleClassicoMatricula)
System.out.println(i);
System.out.println("-- Alunos ordenados por Nome --");
System.out.println("-- Seleção -- ");
Aluno[] vetSelecaoNome = alunos;
Aluno.BBSortClassicoAlunoNome(vetSelecaoNome);
for (Aluno i : vetSelecaoNome)
System.out.println(i);
System.out.println("-- Alunos ordenados por Matricula --");
System.out.println("-- Seleção -- ");
Aluno[] vetSelecaoMatricula = alunos;
Aluno.BBSortClassicoAlunoMatricula(vetSelecaoMatricula);
for (Aluno i : vetSelecaoMatricula)
System.out.println(i);
System.out.println("-- Alunos ordenados por Nome --");
System.out.println("-- Inserção -- ");
Aluno[] verInserçãoNome = alunos;
Aluno.BBSortClassicoAlunoNome(verInserçãoNome);
for (Aluno i : verInserçãoNome)
System.out.println(i);
System.out.println("-- Alunos ordenados por Matricula --");
System.out.println("-- Inserção -- ");
Aluno[] verInserçãoMatricula = alunos;
Aluno.BBSortClassicoAlunoNome(verInserçãoMatricula);
for (Aluno i : verInserçãoMatricula)
System.out.println(i);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment