Trier et rechercher des éléments en Java
Le tri et la recherche sont les opérations de base que nous pouvons effectuer sur les tableaux. Trier signifie réorganiser les éléments d'une liste ou d'un tableau donné par ordre croissant ou décroissant, tandis que rechercher signifie trouver un élément ou son index dans une liste.
Bien qu'il existe différents algorithmes disponibles pour effectuer ces opérations, dans cet article, nous utiliserons certains d'entre eux pour trier et rechercher des éléments en Java. Nous les étudierons un par un.
Méthode 1 : utilisez la méthode intégrée du tableau
Dans cette section, nous aborderons les méthodes suivantes qui aident à trier et à rechercher des éléments dans un tableau.
sort() - C'est une méthode statique de la classe Arrays qui trie le tableau passé en argument par ordre croissant.
Grammaire
Arrays.sort(nameOfarray);
binarySearch() - C'est aussi une méthode statique de la classe Arrays. Il accepte deux paramètres, le premier est le tableau dont les éléments doivent être recherchés et le second est l'élément que nous devons trouver dans ce tableau.
Il renvoie le numéro d'index de l'élément passé en argument.
Grammaire
Arrays.binarySearch(nameOfarray, element);
Exemple
import java.util.*; public class Srch { public static void main(String args[]) { int araylist[] = {9, 3, 56, 0, -2, -6, 2, 1, 80}; System.out.print("The given unsorted list: "); // for each loop that prints the original array for (int print : araylist) { System.out.print(print + " "); } Arrays.sort(araylist); // method to sort given array System.out.println(); System.out.print("The newly sorted list: "); // for each loop that prints the newly sorted array for (int print : araylist) { System.out.print(print + " "); } System.out.println(); // method to search given element int position = Arrays.binarySearch(araylist, 1); if(position > -1) { System.out.print("Element is available at index: " + position); } else { System.out.print("Element is not available"); } } }
Sortie
The given unsorted list: 9 3 56 0 -2 -6 2 1 80 The newly sorted list: -6 -2 0 1 2 3 9 56 80 Element is available at index: 3
Méthode 2 : Utilisez notre logique personnalisée
Trier à l'aide du tri à bulles
Algorithme
Étape 1 - Tout d'abord, déclarez et initialisez un tableau nommé "araylist" et une variable entière nommée "temp" pour stocker temporairement les éléments décalés.
Étape 2 - Utilisez deux boucles for pour comparer le i-ème élément de position avec le i + 1-ème élément. Créez un bloc if à l'intérieur de la deuxième boucle for pour vérifier quel élément est le plus grand, puis nous effectuons une opération de décalage pour réorganiser les éléments par ordre croissant.
Étape 3 - Maintenant, en utilisant chaque boucle, nous allons imprimer le tableau trié.
Exemple
public class Bubble { public static void main(String[] args) { int araylist[] = {9, 3, 56, 0, 2, 1, 80}; int temp = 0; System.out.print("The given unsorted list: "); for (int print : araylist) { System.out.print(print + " "); } for (int i = 0; i < araylist.length; i++) { for (int j = i+1; j < araylist.length; j++) { if(araylist[i] > araylist[j]) { temp = araylist[i]; araylist[i] = araylist[j]; araylist[j] = temp; } } } System.out.println(); System.out.print("The newly sorted list: "); for (int print : araylist) { System.out.print(print + " "); } } }
Sortie
The given unsorted list: 9 3 56 0 2 1 80 The newly sorted list: 0 1 2 3 9 56 80
Recherche par recherche linéaire
Algorithme
Étape 1 - Tout d'abord, déclarez et initialisez un tableau appelé "araylist" et une variable entière appelée "searchElem" que nous rechercherons dans le tableau. Nous avons également besoin de deux variables entières "isFound" et "locate".
Étape 2 - Maintenant, créez une boucle for qui s'étendra jusqu'à la longueur du tableau. Dans cette boucle, utilisez un bloc if pour vérifier si "searchElem" existe dans le tableau. Si disponible, son index est stocké dans la variable "locate" et la variable "isFound" est incrémentée à 1.
Étape 3 - Ensuite, nous créons un bloc if else pour vérifier si la variable "isFound" passe à 1. S'il est égal à 1, cela signifie que l'élément a été trouvé et nous renvoyons l'index. Sinon, l'instruction du bloc else sera exécutée.
Exemple
public class Linear { public static void main(String[] args) { int araylist[] = {9, 3, 56, 0, 2, 1, 80}; int searchElem = 0; int isFound = 0; int locate = 0; for(int i = 0; i < araylist.length; i++) { if(searchElem == araylist[i]) { isFound = 1; locate = i; } } if(isFound == 1) { System.out.print("Element is available at index: " + locate); } else { System.out.print("Element is not available"); } } }
Sortie
Element is available at index: 3
Conclusion
Dans cet article, nous avons expliqué comment trier les éléments d'un tableau et effectuer une opération de recherche pour trouver un élément spécifique de ce tableau. Nous pouvons utiliser la méthode intégrée appelée "sort()" ou n'importe quel algorithme de tri et de recherche.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Cet article analyse les quatre premiers cadres JavaScript (React, Angular, Vue, Svelte) en 2025, en comparant leurs performances, leur évolutivité et leurs perspectives d'avenir. Alors que tous restent dominants en raison de fortes communautés et écosystèmes, leur populaire relatif

L'article examine la mise en œuvre de la mise en cache à plusieurs niveaux en Java à l'aide de la caféine et du cache de goyave pour améliorer les performances de l'application. Il couvre les avantages de configuration, d'intégration et de performance, ainsi que la gestion de la politique de configuration et d'expulsion le meilleur PRA

Node.js 20 améliore considérablement les performances via des améliorations du moteur V8, notamment la collecte des ordures et les E / S plus rapides. Les nouvelles fonctionnalités incluent une meilleure prise en charge de Webassembly et des outils de débogage raffinés, augmentant la productivité des développeurs et la vitesse d'application.

Le chargement de classe de Java implique le chargement, la liaison et l'initialisation des classes à l'aide d'un système hiérarchique avec Bootstrap, Extension et Application Classloaders. Le modèle de délégation parent garantit que les classes de base sont chargées en premier, affectant la classe de classe personnalisée LOA

Cet article aborde la vulnérabilité CVE-2022-1471 dans SnakeyAml, un défaut critique permettant l'exécution du code distant. Il détaille comment la mise à niveau des applications de démarrage de printemps vers SnakeyAml 1.33 ou ultérieurement atténue ce risque, en soulignant cette mise à jour de dépendance

Iceberg, un format de table ouverte pour les grands ensembles de données analytiques, améliore les performances et l'évolutivité du lac Data. Il aborde les limites du parquet / orc par le biais de la gestion interne des métadonnées, permettant une évolution efficace du schéma, un voyage dans le temps, un W simultanément

Cet article explore l'intégration de la programmation fonctionnelle dans Java à l'aide d'expressions Lambda, de flux API, de références de méthode et facultatif. Il met en évidence des avantages tels que l'amélioration de la lisibilité au code et de la maintenabilité grâce à la concision et à l'immuabilité

Cet article explore les méthodes de partage des données entre les étapes du concombre, la comparaison du contexte de scénario, les variables globales, le passage des arguments et les structures de données. Il met l'accent
