stack
, également connu sous le nom de pile, est une table linéaire avec des opérations limitées. Sa limitation est que seules les opérations d'insertion et de suppression sont autorisées à une extrémité de la table, et les ajouts ne sont pas autorisés. n'importe où ailleurs, rechercher, supprimer et autres opérations. stack
,又称堆栈,他是运算受限的线性表,其限制是仅允许在表的一端进行插入和删除操作,不允许在其他任何位置进行添加、查找、删除等操作。
简单的来说,采用该结构的集合,对元素的存取有如下几个特点
1、先进后出。
2、栈的入口、出口都是栈的顶端位置。
压栈:就是存元素,把元素存储到栈的顶端位置,栈中已有元素一次向栈底方向移动一个位置。
弹栈:就是取元素,把栈顶端的元素取出,栈中已有元素依次向栈顶方向移动一个位置。
queue
,简称队,它同堆栈一样,也是运算受限的线性表,其限制是只允许在表的一端进行插入,而在表的另一端进行删除。
简单来说,采用该结构的集合,对元素的存取有如下的特点:
1、先进先出
2、队列的入口、出口各占一侧,例如左侧为入口,右侧为出口
Array
,是一个有序的元素序列,数组是在内存中开辟出一端连续的空间,并在此空间存放元素,可以通过索引快速找到对应的数据。
采用此方式存储数据有如下几个特点:
1、查找元素快,通过索引可以快速访问指定位置的元素。
2、增删元素慢,在指定索引位置增加元素,需要创建一个新的数组,将指定新元素存储在指定的索引位置,然后再把原数组元素根据索引,复制到新数组对应的索引位置
删除元素,需要创建一个新数组,把原数组元素根据索引,复制到新数组对应索引的位置,原数组中指定索引位置元素不复制到新数组中。
Linked List
file d'attente
, appelée file d'attente Comme la pile, c'est aussi une table linéaire avec des opérations limitées. peuvent être effectuées à une extrémité du tableau. Les insertions sont effectuées tandis que les suppressions sont effectuées à l’autre extrémité du tableau. En termes simples, en utilisant un ensemble de cette structure, l'accès aux éléments présente les caractéristiques suivantes :
Array
, est une séquence ordonnée d'éléments Le tableau s'ouvre. un espace continu à une extrémité de la mémoire, et ici L'espace stocke les éléments et les données correspondantes peuvent être rapidement trouvées grâce à l'index. Le stockage des données de cette manière présente les caractéristiques suivantes : 1. Il est rapide de trouver des éléments et les éléments à la position spécifiée sont rapidement accessibles via l'index. 2. L'ajout et la suppression d'éléments sont lents. Pour ajouter un élément à une position d'index spécifiée, vous devez créer un nouveau tableau, stocker le nouvel élément spécifié à la position d'index spécifiée, puis copier les éléments du tableau d'origine dans les éléments correspondants. position d'index du nouveau tableau selon l'index. Liste chaînée
, composée d'une série de nœuds, qui peuvent être générés dynamiquement au moment de l'exécution. Chaque nœud se compose de deux parties : l'une est le champ de données qui stocke les éléments de données et l'autre est le champ de pointeur qui stocke l'adresse du nœud suivant. Les listes chaînées sont divisées en listes chaînées unidirectionnelles et en listes doublement chaînées. Une liste chaînée double a une référence au nœud précédent et un pointeur vers le nœud suivant, tandis qu'une liste chaînée unidirectionnelle n'a qu'un pointeur vers le nœud suivant. En termes simples, l'utilisation de cet ensemble de structures de données pour stocker des données présente les caractéristiques suivantes :
Plusieurs nœuds sont connectés via des adresses.
La requête est lente. Si vous souhaitez trouver un élément, vous devez rechercher en arrière dans les nœuds connectés.
Ajout et suppression rapides, modifiez simplement l'adresse reliant l'élément suivant.
Arbre rouge-noir : Arbre binaire : C'est un arbre ordonné avec pas plus de 2 nœuds par nœud
Compréhension simple, un arbre binaire est une structure arborescente avec au plus deux sous-arbres par nœud. Le nœud supérieur est appelé nœud racine et les deux côtés sont appelés sous-arbre gauche et sous-arbre droit.
🎜L'arbre rouge-noir lui-même est un numéro de recherche binaire. Après avoir inséré le nœud, le numéro est toujours un numéro de recherche binaire, ce qui signifie que les valeurs clés du numéro sont toujours en ordre. 🎜🎜Contraintes de l'arbre rouge-noir : 🎜🎜🎜🎜Les nœuds peuvent être rouges ou noirs 🎜🎜🎜🎜Le nœud racine est noir 🎜🎜🎜🎜Les nœuds feuilles sont noirs 🎜🎜🎜🎜Les nœuds enfants de chaque nœud rouge sont Il est noir🎜🎜🎜🎜Le nombre de nœuds noirs sur tous les chemins depuis n'importe quel nœud jusqu'à chacun de ses nœuds feuilles est le même🎜🎜🎜🎜🎜Caractéristiques des arbres rouge-noir :🎜🎜🎜Exceptionnellement rapide, se rapprochant d'un arbre équilibré, trouver des éléments de feuille Les temps minimum et maximum ne dépassent pas le double. 🎜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!