Array_encontraPosicaoMenorValor

4 respostas
E

Alguém já fez um método de Array de inteiros unidimensional, para encontrar o menor valor sem utilizar nenhum de laçoe utilizando recursão?
Exemplo:
private int encontraPosicaoMenorValor{}

4 Respostas

G
private static int smallest(int[] table) {
    int smallest = table[0];
    for (int i = 1; i < table.length; i++) {
        if (table[i] < smallest) {
          smallest = table[i];
        }
    }
    return smallest;
}

private static int indexOfTheSmallest(int[] table) {
    int theIndexOfSmallest = 0;

    for (int i = 0; i < table.length; i++) {
        if ( table[i]<table[theIndexOfSmallest]) {
            theIndexOfSmallest = i;
        }
    }

    return theIndexOfSmallest;
}

private static int indexOfTheSmallestStartingFrom(int[] table, int startIndex) {
    int theIndexOfSmallest = startIndex;

    for (int i = startIndex; i < table.length; i++) {
        if ( table[i]<table[theIndexOfSmallest]) {
            theIndexOfSmallest = i;
        }
    }

    return theIndexOfSmallest;
}

private static void swap(int[] table, int index1, int index2) {
    int index1OldValue = table[index1];
    table[index1] = table[index2];
    table[index2] = index1OldValue;
}

public static void sort(int[] table){
    for (int i = 0; i < table.length-1; i++) {
         int theIndexOfTheSmallest = indexOfTheSmallestStartingFrom(table, i);
         swap(table, i, theIndexOfTheSmallest);
    }
}
E

FOR e WHILE são laços.

G

use os métodos Arrays, só assim você não implementa laços (diretamente)

D

Um tópico parecido

Criado 23 de abril de 2018
Ultima resposta 24 de abr. de 2018
Respostas 4
Participantes 3