Maison  >  Article  >  interface Web  >  Structures de données et algorithme Jour 0

Structures de données et algorithme Jour 0

Patricia Arquette
Patricia Arquetteoriginal
2024-10-06 06:20:03996parcourir

Data Structures & Algorithm Day 0

Jour 0

Structures de données de base

Nous verrons tous les exemples de code en javascript mais ces concepts ne sont pas indépendants du langage

  1. Tableaux

Un tableau est une collection d'éléments, généralement du même type, stockés dans des emplacements mémoire contigus.

Tableau sous forme de liste de livres :
Imaginez que vous ayez une étagère contenant un nombre spécifique de livres. Chaque emplacement sur l'étagère est comme un index dans un tableau, et chaque livre est comme l'élément stocké à cet index.

Caractéristiques clés :

Indexation : Chaque élément est accessible par son index (basé sur 0 ou basé sur 1 selon la langue).


const fruit  = ['Banana','Apple','Grape', 'Pineapple']

console.log(fruit[0]) //  Banana is accessed 0 index
console.log(fruit[3]) // Pineapple is accessed 3 index


Taille fixe : Une fois déclarée, la taille du tableau ne peut pas changer (tableaux statiques).
Dans les langages avec des tableaux statiques, lorsque vous déclarez un tableau, vous devez préciser sa taille au moment de la création. Cela signifie que si vous déclarez un tableau d'une taille de 5, vous ne pouvez y stocker que 5 éléments et la taille ne peut pas être modifiée ultérieurement. Vous ne pouvez pas ajouter plus d'éléments une fois le tableau plein, ni le réduire.

Cependant, les tableaux JavaScript sont dynamiques par nature, vous n'avez donc pas cette limitation de taille fixe dans la plupart des cas. Mais pour comprendre conceptuellement les tableaux de taille fixe, imaginez si les tableaux JavaScript ne pouvaient pas croître ou diminuer.


let fixedArray = new Array(3); // Array with a fixed size of 3
fixedArray[0] = 'apple';
fixedArray[1] = 'banana';
fixedArray[2] = 'cherry';

// Now if you try to add another item:
fixedArray[3] = 'date'; // This would throw an error or overwrite an existing element (hypothetically)


console.log(fixedArray) // [ 'apple', 'banana', 'cherry', 'date' ]


Accès aléatoire : vous pouvez accéder à n'importe quel élément directement en utilisant son index.


const fruit  = ['Banana','Apple','Grape', 'Pineapple']

console.log(fruit[0]) // index 0 is the Banana 
console.log(fruit[3]) // index 3 is the Pineapple 


Avantages :

  • Accès rapide aux éléments par index (complexité temporelle O(1)).
  • Simple à mettre en œuvre.

Inconvénients :

  • L'insertion et la suppression sont coûteuses (complexité temporelle O(n)) car le déplacement d'éléments peut être nécessaire.
  • Taille fixe (dans certaines langues), ce qui le rend moins flexible.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn