Algorithmique: structures de données
This commit is contained in:
parent
067be712a3
commit
057dccd458
68
Cours.md
68
Cours.md
@ -217,10 +217,76 @@ Exemples:
|
|||||||
|
|
||||||
## Tableaux
|
## Tableaux
|
||||||
|
|
||||||
|
Un **tableau** (array) est une structure de données ordonnées, contenant un nombre invariant de valeurs du même type. L'accès aux valeurs contenues se fait par un indice (numéro d'ordre parmi les éléments du tableau, en commençant à 0). L'affectation des éléments du tableau peut se faire à l'initialisation ou en utilisant les indices.
|
||||||
|
|
||||||
|
Déclaration d'un tableau de 4 éléments
|
||||||
|
|
||||||
|
int[] tab = new int[4];
|
||||||
|
|
||||||
|
Déclaration et initialisation
|
||||||
|
|
||||||
|
int[] tab = new int[] { 1, 2, 3, 4};
|
||||||
|
|
||||||
|
Affectation des éléments
|
||||||
|
|
||||||
|
int[] tab = new int[4];
|
||||||
|
tab[0] = 1;
|
||||||
|
tab[1] = 2;
|
||||||
|
tab[2] = 3;
|
||||||
|
tab[3] = 4;
|
||||||
|
|
||||||
|
Accès aux éléments
|
||||||
|
|
||||||
|
if (tab[0] > 0) {
|
||||||
|
// instruction
|
||||||
|
}
|
||||||
|
|
||||||
## Liste
|
## Liste
|
||||||
|
|
||||||
|
Une **liste** est une structure similaire à un tableau mais de taille variable.
|
||||||
|
|
||||||
|
List maList = new ArrayList();
|
||||||
|
maList.add(1);
|
||||||
|
maList.add(2);
|
||||||
|
|
||||||
|
int variable = maList(1); // variable vaut 2
|
||||||
|
|
||||||
## Ensemble
|
## Ensemble
|
||||||
|
|
||||||
|
Un **ensemble** (set) est une structure de données non ordonnées contenant des éléments uniques.
|
||||||
|
|
||||||
|
Set ensemble = new HashSet();
|
||||||
|
ensemble.add(1);
|
||||||
|
ensemble.add(2);
|
||||||
|
ensemble.add(2); // pas d'effet car les éléments sont uniques
|
||||||
|
|
||||||
## Table d'association
|
## Table d'association
|
||||||
|
|
||||||
## Objet
|
Une **table d'association** (dictionnaire, map) est une structure de données contenant des valeurs indexées par une autre valeur appelée clé. On peut accéder à une valeur en utilisant sa clé, on peut affecter une valeur en fournissant la clé et la valeur.
|
||||||
|
|
||||||
|
Map tableAssoc = new HashMap();
|
||||||
|
tableAssoc.put(1, "un");
|
||||||
|
tableAssoc.put(2, "deux");
|
||||||
|
|
||||||
|
// valeur pour la clé 1
|
||||||
|
tableAssoc.get(1);
|
||||||
|
|
||||||
|
|
||||||
|
## Structure/Objet
|
||||||
|
|
||||||
|
Une structure est un type de données contenant plusieurs valeurs nommées. On appelle le nom d'une valeur dans une structure un attribut. On peut accéder à la valeur d'un attribut en utilisant l'opérateur `.`. Dans les langages dit "objet", la notion de structure est remplacées par la notion d'objet qui est une forme de structure contenant également des fonctions.
|
||||||
|
|
||||||
|
class MonObjet {
|
||||||
|
int monAttributEntier;
|
||||||
|
String monAttributChaine;
|
||||||
|
}
|
||||||
|
|
||||||
|
MonObjet obj = new MonObjet();
|
||||||
|
// affectation des attributs
|
||||||
|
obj.monAttributEntier = 1;
|
||||||
|
obj.monAttributChaine = "test";
|
||||||
|
// valeurs des attributs
|
||||||
|
if (obj.monAttributEntier > 0) {
|
||||||
|
// instruction
|
||||||
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user