Dardo: encontrar el valor mínimo y máximo en una lista

En Dart podemos encontrar el elemento de valor mínimo y máximo presente en la lista dada de siete maneras:

  1. Usando for loop para encontrar el elemento más grande y más pequeño.
  2. Usando la función de clasificación para encontrar el elemento más grande y más pequeño.
  3. Usando forEach loop para encontrar el elemento más grande y más pequeño.
  4. Usando solo el método de reducción en dart para encontrar el elemento más grande y más pequeño.
  5. Usando el método de reducción con la biblioteca dart:math .
  6. Usando el método de plegado con dardo para encontrar el elemento más grande y más pequeño.
  7. Usando el método de plegado con la biblioteca dart:math .

Uso del bucle for

Es la forma más básica de encontrar el elemento más grande y más pequeño presente en la lista simplemente revisando todos los elementos comparándolos y dando la respuesta.

Ejemplo:

Dart

// Main function
void main() {
    
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Declaring and assigning the
  // largestGeekValue and smallestGeekValue
  var largestGeekValue = geekList[0];
  var smallestGeekValue = geekList[0];
  
  for (var i = 0; i < geekList.length; i++) {
      
    // Checking for largest value in the list
    if (geekList[i] > largestGeekValue) {
      largestGeekValue = geekList[i];
    }
      
    // Checking for smallest value in the list
    if (geekList[i] < smallestGeekValue) {
      smallestGeekValue = geekList[i];
    }
  }
  
  // Printing the values
  print("Smallest value in the list : $smallestGeekValue");
  print("Largest value in the list : $largestGeekValue");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Usando la función de clasificación

Dart también permite al usuario ordenar la lista en orden ascendente, es decir, el primero es el más pequeño y el último es el más grande.

Ejemplo:

Dart

// Main function
void main() {
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Sorting the list
  geekList.sort();
  
  // Printing the values
  print("Smallest value in the list : ${geekList.first}");
  print("Largest value in the list : ${geekList.last}");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Usando forEach bucle

A diferencia del ciclo for, también se puede usar el ciclo forEach para obtener los elementos de la lista y luego verificar las condiciones en los elementos de la lista.

Ejemplo:

Dart

// Main function
void main() {
    
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Declaring and assigning the
  // largestGeekValue and smallestGeekValue
  var largestGeekValue = geekList[0];
  var smallestGeekValue = geekList[0];
    
  // Using forEach loop to find
  // the largest and smallest
  // numbers in the list
  geekList.forEach((gfg) => {
        if (gfg > largestGeekValue) {largestGeekValue = gfg},
        if (gfg < smallestGeekValue) {smallestGeekValue = gfg},
      });
  
  // Printing the values
  print("Smallest value in the list : $smallestGeekValue");
  print("Largest value in the list : $largestGeekValue");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Usando el método de reducción

Se puede usar la función de reducción de Dart para reducir la lista a un valor particular y guardarla.

Ejemplo:

Dart

// Main function
void main() {
    
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Declaring and assigning the
  // largestGeekValue and smallestGeekValue
  // Finding the smallest and largest
  // value in the list
  var smallestGeekValue = geekList.reduce(
  (current, next) => current < next ? current : next); 
  var largestGeekValue = geekList.reduce(
  (current, next) => current > next ? current : next);
  
  // Printing the values
  print("Smallest value in the list : $smallestGeekValue");
  print("Largest value in the list : $largestGeekValue");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Usando el método de reducción con la biblioteca dart:math

El código anterior se puede minimizar importando las bibliotecas matemáticas.

Ejemplo:

Dart

import "dart:math";
  
// Main function
void main() {
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Declaring and assigning the
  // largestGeekValue and smallestGeekValue
  // Finding the smallest and largest value in the list
  var smallestGeekValue = geekList.reduce(min); 
  var largestGeekValue = geekList.reduce(max);
  
  // Printing the values
  print("Smallest value in the list : $smallestGeekValue");
  print("Largest value in the list : $largestGeekValue");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Usando el método de plegado

Además de reducir dart, también tiene un método de plegado que es bastante similar a reducir, aparte del hecho de que comienza con un valor inicial y luego lo cambia durante el proceso.

Ejemplo:

Dart

// Main function
void main() {
    
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Declaring and assigning the
  // largestGeekValue and smallestGeekValue
  // Finding the smallest and
  // largest value in the list
  var smallestGeekValue = geekList.fold(geekList[0],
  (previous, current) => previous < current ? previous : current);
  var largestGeekValue = geekList.fold(geekList[0],
  (previous, current) => previous > current ? previous : current);
  
  // Printing the values
  print("Smallest value in the list : $smallestGeekValue");
  print("Largest value in the list : $largestGeekValue");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Usando el método de plegado con la biblioteca dart:math

El código anterior se puede minimizar importando las bibliotecas matemáticas.

Ejemplo:

Dart

import "dart:math";
  
// Main function
void main() {
  // Creating a geek list
  var geekList = [121, 12, 33, 14, 3];
    
  // Declaring and assigning
  // the largestGeekValue and smallestGeekValue
  // Finding the smallest and
  // largest value in the list
  var smallestGeekValue = geekList.fold(geekList[0],min);
  var largestGeekValue = geekList.fold(geekList[0],max);
  
  // Printing the values
  print("Smallest value in the list : $smallestGeekValue");
  print("Largest value in the list : $largestGeekValue");
}

 

Producción:

Smallest value in the list : 3
Largest value in the list : 121

Publicación traducida automáticamente

Artículo escrito por aditya_taparia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *