


Quelles sont les structures de données couramment utilisées en Java ? Une analyse approfondie des structures de données Java
Java est un langage de programmation largement utilisé et les structures de données font partie intégrante du processus de développement. Les structures de données aident à organiser et à gérer les données et à améliorer l'efficacité de l'exécution des programmes. En Java, les structures de données couramment utilisées incluent les tableaux, les listes chaînées, les piles, les files d'attente, les arbres, les graphiques, etc. Cet article fournira une analyse approfondie de ces structures de données Java couramment utilisées et fournira des exemples de code spécifiques.
1. Tableau
Un tableau est une structure de données linéaire qui peut stocker des éléments du même type. En Java, un tableau peut être déclaré et initialisé en utilisant :
int[] arr = new int[5]; // 声明一个长度为5的整型数组 int[] arr = {1, 2, 3, 4, 5}; // 声明并初始化一个整型数组
Les éléments d'un tableau sont accessibles via des indices, par exemple : arr[0]
représente le premier élément du tableau. Il existe également certaines opérations couramment utilisées sur les tableaux, telles que le parcours, l'obtention de la longueur, le tri, etc. arr[0]
表示数组的第一个元素。数组还有一些常用的操作,如遍历、获取长度、排序等。
二、链表(LinkedList)
链表是一种动态数据结构,它通过指针将节点连接在一起。在Java中,可以使用LinkedList
类来实现链表的功能。以下是一个使用链表实现的简单示例:
import java.util.LinkedList; public class MyLinkedList { public static void main(String[] args) { LinkedList<String> linkedList = new LinkedList<>(); linkedList.add("A"); // 在链表末尾添加元素 linkedList.addFirst("B"); // 在链表头部添加元素 linkedList.addLast("C"); // 在链表尾部添加元素 System.out.println(linkedList.get(0)); // 获取第一个元素 System.out.println(linkedList.size()); // 获取链表长度 } }
三、栈(Stack)
栈是一种后进先出(LIFO)的数据结构,它可以通过java.util.Stack
类来实现。以下是一个使用栈实现的简单示例:
import java.util.Stack; public class MyStack { public static void main(String[] args) { Stack<String> stack = new Stack<>(); stack.push("A"); // 元素入栈 stack.push("B"); stack.push("C"); System.out.println(stack.peek()); // 获取栈顶元素 System.out.println(stack.pop()); // 元素出栈 System.out.println(stack.size()); // 获取栈的大小 } }
四、队列(Queue)
队列是一种先进先出(FIFO)的数据结构,可以使用java.util.Queue
接口和它的实现类来实现队列的功能。以下是一个使用队列实现的简单示例:
import java.util.LinkedList; import java.util.Queue; public class MyQueue { public static void main(String[] args) { Queue<String> queue = new LinkedList<>(); queue.offer("A"); // 元素入队 queue.offer("B"); queue.offer("C"); System.out.println(queue.peek()); // 获取队首元素 System.out.println(queue.poll()); // 元素出队 System.out.println(queue.size()); // 获取队列的大小 } }
五、树(Tree)
树是一种非线性数据结构,它由节点组成,节点之间通过边连接。在Java中,可以使用java.util.TreeSet
和java.util.TreeMap
Une liste chaînée est une structure de données dynamique qui relie les nœuds entre eux via des pointeurs. En Java, vous pouvez utiliser la classe LinkedList
pour implémenter la fonction d'une liste chaînée. Ce qui suit est un exemple simple implémenté à l'aide d'une liste chaînée :
import java.util.TreeSet; public class MyTree { public static void main(String[] args) { TreeSet<Integer> treeSet = new TreeSet<>(); treeSet.add(5); // 添加元素 treeSet.add(3); treeSet.add(8); System.out.println(treeSet.first()); // 获取最小的元素 System.out.println(treeSet.last()); // 获取最大的元素 System.out.println(treeSet.size()); // 获取元素个数 } }
La pile est une structure de données dernier entré, premier sorti (LIFO), qui peut être implémentée via java.util.Stack
classe à remplir. Ce qui suit est un exemple simple utilisant l'implémentation de la pile :
import java.util.ArrayList; import java.util.List; public class MyGraph { private int vertexCount; // 顶点数量 private List<List<Integer>> adjList; // 邻接表 public MyGraph(int vertexCount) { this.vertexCount = vertexCount; adjList = new ArrayList<>(); for (int i = 0; i < vertexCount; i++) { adjList.add(new ArrayList<>()); } } public void addEdge(int src, int dest) { adjList.get(src).add(dest); adjList.get(dest).add(src); } public static void main(String[] args) { MyGraph myGraph = new MyGraph(5); myGraph.addEdge(0, 1); // 添加边 myGraph.addEdge(0, 2); myGraph.addEdge(1, 3); System.out.println(myGraph.adjList.get(0)); // 获取节点0的邻接节点 } }
java.util.Queue et sa classe d'implémentation implémentent la fonctionnalité de la file d'attente. Voici un exemple simple implémenté à l'aide de files d'attente : 🎜rrreee🎜 5. Tree (Tree) 🎜Un arbre est une structure de données non linéaire constituée de nœuds reliés par des arêtes. En Java, vous pouvez utiliser <code>java.util.TreeSet
et java.util.TreeMap
pour implémenter des fonctions d'arborescence. Voici un exemple simple implémenté à l'aide d'un arbre : 🎜rrreee🎜 6. Graphique 🎜Un graphique est une structure de données composée de nœuds et d'arêtes, qui peut être utilisée pour représenter des relations plusieurs-à-plusieurs. En Java, les graphiques peuvent être représentés à l'aide de matrices de contiguïté ou de listes de contiguïté. Ce qui suit est un exemple simple utilisant la représentation de liste de contiguïté : 🎜rrreee🎜Ce qui précède est une analyse approfondie et des exemples de code spécifiques de structures de données couramment utilisées en Java. La structure des données est une partie importante de la programmation. La connaissance et l'utilisation flexible de diverses structures de données peuvent améliorer efficacement l'efficacité opérationnelle et les performances du programme. J'espère que cet article pourra fournir aux lecteurs des conseils et une aide utiles. 🎜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 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.

Analyse approfondie de l'indice d'évasion des 15 premiers Bitcoin: Perspectives du marché pour 2025 Cet article analyse profondément l'indice de bitcoin d'échappement couramment utilisé, parmi lequel le ratio Bitcoin Rhodl, l'USDT actuel de la gestion de patrimoine et le indice saisonnier d'Altcoin ont atteint l'indice d'évasion en 2024, attirant l'attention du marché. Comment les investisseurs devraient-ils faire face aux risques potentiels? Interprétons ces indicateurs un par un et explorons des stratégies de réponse raisonnables. 1. Explication détaillée des indicateurs clés AHR999 Indicateur de thésaurisation de pièces: créé par AHR999, aidant la stratégie d'investissement fixe Bitcoin. La valeur actuelle est de 1,21, qui se trouve dans la plage d'attente, donc il est recommandé d'être prudent. Lien vers AHR999 Escape Top Indicateur: Un supplément à l'indicateur de thésaurisation de monnaie AHR999, utilisé pour identifier le haut du marché. La valeur actuelle est de 2,48, cette semaine

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
