


Explication graphique détaillée de l'implémentation Java du tri à bulles
Cet article vous apporte des connaissances pertinentes sur java, qui présente principalement les problèmes liés à la mise en œuvre du tri à bulles. Le tri à bulles consiste à comparer deux éléments adjacents, du début à la fin de la liste, à comparer chaque paire d'éléments adjacents. à notre tour, jetons-y un coup d'œil. J'espère que cela sera utile à tout le monde.
Apprentissage recommandé : "Tutoriel Java"
Principe de tri des bulles
Comparez deux éléments adjacents. Si le premier est plus grand que le second, échangez leurs positions (par ordre croissant, vice versa par ordre décroissant).
Comparez chaque paire d'éléments adjacents dans l'ordre du début à la fin de la liste. De cette façon, l'élément ayant la plus grande valeur « bulle » jusqu'à la fin de la liste grâce à l'échange, complétant ainsi le premier tour de « bulles ».
Répétez l'étape précédente et continuez à comparer les éléments adjacents depuis le début de la liste. Les éléments qui ont « bouillonné » n'ont pas besoin d'être comparés (vous pouvez les comparer jusqu'au bout. Les éléments qui ont « bouillonné » vers l'arrière n'ont pas besoin d'être échangés même s'ils sont comparés. Ne pas comparer peut réduire mesures).
Continuez à comparer à partir de la liste, et un élément « bouillonnera » avec succès à chaque tour de comparaison. Le nombre d'éléments qui doivent être comparés à chaque tour diminuera jusqu'à ce qu'il ne reste qu'un seul élément qui ne "bulle" pas (aucune paire d'éléments n'a besoin d'être comparée), puis le tri de la liste est terminé.
Processus de tri des bulles
Prenons ce tableau unidimensionnel comme exemple :
int[] array = new int[]{55,33,22,66,11};
Le premier tour de bulle
- La figure ① est un histogramme de l'ordre de départ des données dans le premier tour de "bulle ", à condition que Si la condition est remplie : " Si l'élément précédent est plus grand que l'élément suivant, alors l'ordre de position est échangé, sinon aucun échange n'est effectué. "
- array[0]=55 > array[1]=33, la condition est remplie, échangez l'ordre de position des éléments, comme le montre la figure ② ;
- array[1]=55 > =22, la condition Si la condition est remplie, l'ordre de position des éléments est échangé, comme le montre la figure
- array[2]=55 array[3]=66, si la condition n'est pas remplie, l'ordre de position des éléments n'est pas échangé, comme le montre la figure ③ ;
- array[3]=66 > array[4]=11, si les conditions sont remplies, échangez l'ordre de position des éléments, comme indiqué dans Figure ④ ;
Le premier tour de démonstration de « bulle » est illustré dans la figure :
Le deuxième tour de bouillonnement
- La figure ④ est l'histogramme de l'ordre de départ des données du deuxième tour de « bulle " ;
- array[0]33 > array[1]=22, les conditions sont remplies et les éléments sont échangés. Ordre de position, comme le montre la figure ⑤ ;
- array[1]33
- array[2]55 > ; l'ordre de position des éléments, comme le montre la figure ⑥ ; ordre des données au troisième tour de "bulle" ;
array[1]=33 > array[2]=11, si les conditions sont remplies, échangez l'ordre de position des éléments, comme le montre la figure

Le troisième tour de ; La démonstration de la « bulle » est comme le montre la figure ci-dessous :
- Le quatrième tour de bulle
- La figure ⑦ est l'histogramme de la séquence de départ des données du quatrième tour de « bulle » ; =22 > array[1]= 11. Si les conditions sont remplies, échangez l'ordre de position de "22" et "11", comme indiqué sur la figure ⑧ ;
Le quatrième tour de démonstration "bulle" est comme indiqué ; sur la figure :
À ce stade, le bouillonnement du tableau Le processus de tri est terminé !
- Implémentation de code spécifique
- Classe BubbleSort :
public class BubbleSort { public static void sort(int array[]) { //i表示第几轮“冒泡”,j 表示“走访”到的元素索引。 // 每一轮“冒泡”中,j 需要从列表开头“走访”到 array.length - 1 的位置。 for (int i = 0; i array[j + 1]) { int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } }}
import java.util.Arrays;public class TestMain { public static void main(String[] args) { int[] array = new int[]{55, 33, 22, 66, 11}; //输出排序前的array数组 System.out.print("排序前:"); System.out.println(Arrays.toString(array)); //调用BubbleSort类中的sort方法对array数组进行排序 BubbleSort.sort(array); //输出冒泡排序后的array数组 System.out.print("排序后:"); System.out.println(Arrays.toString(array)); }}
Les résultats en cours d'exécution sont les suivants :

排序前:[55, 33, 22, 66, 11]排序后:[11, 22, 33, 55, 66]
Tutoriel d'apprentissage Java
"
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)

Guide du nombre parfait en Java. Nous discutons ici de la définition, comment vérifier le nombre parfait en Java ?, des exemples d'implémentation de code.

Guide du générateur de nombres aléatoires en Java. Nous discutons ici des fonctions en Java avec des exemples et de deux générateurs différents avec d'autres exemples.

Guide de Weka en Java. Nous discutons ici de l'introduction, de la façon d'utiliser Weka Java, du type de plate-forme et des avantages avec des exemples.

Guide du nombre de Smith en Java. Nous discutons ici de la définition, comment vérifier le numéro Smith en Java ? exemple avec implémentation de code.

Dans cet article, nous avons conservé les questions d'entretien Java Spring les plus posées avec leurs réponses détaillées. Pour que vous puissiez réussir l'interview.

Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

Guide de TimeStamp to Date en Java. Ici, nous discutons également de l'introduction et de la façon de convertir l'horodatage en date en Java avec des exemples.

Les capsules sont des figures géométriques tridimensionnelles, composées d'un cylindre et d'un hémisphère aux deux extrémités. Le volume de la capsule peut être calculé en ajoutant le volume du cylindre et le volume de l'hémisphère aux deux extrémités. Ce tutoriel discutera de la façon de calculer le volume d'une capsule donnée en Java en utilisant différentes méthodes. Formule de volume de capsule La formule du volume de la capsule est la suivante: Volume de capsule = volume cylindrique volume de deux hémisphères volume dans, R: Le rayon de l'hémisphère. H: La hauteur du cylindre (à l'exclusion de l'hémisphère). Exemple 1 entrer Rayon = 5 unités Hauteur = 10 unités Sortir Volume = 1570,8 unités cubes expliquer Calculer le volume à l'aide de la formule: Volume = π × r2 × h (4
