En C++, un tableau est une structure de données de taille fixe dont la taille doit être spécifiée au moment de la création, tandis qu'un vecteur est une structure de données de taille dynamique dont la taille peut être modifiée au moment de l'exécution. Les tableaux utilisent l'opérateur [] pour accéder et modifier les éléments, tandis que les vecteurs utilisent la méthode push_back() pour ajouter des éléments et l'opérateur [] pour accéder aux éléments. Les tableaux doivent utiliser delete[] pour libérer de la mémoire, tandis que les vecteurs utilisent Eraser() pour supprimer des éléments.
Tableaux et vecteurs en C++ : différences et combat pratique
En C++, les tableaux et les vecteurs sont tous deux des collections utilisées pour stocker le même type de données. Cependant, ils présentent des différences essentielles dans la manière dont ils créent, accèdent et gèrent les données.
Arrays
Les tableaux sont des structures de données de taille fixe dont la taille est spécifiée au moment de la création. Utilisez l'opérateur [] pour accéder et modifier les éléments d'un tableau.
Les vecteurs sont des structures de données de taille dynamique dont la taille peut changer au moment de l'exécution. Utilisez la méthode push_back() pour ajouter des éléments et l'opérateur [] pour accéder et modifier les éléments.
int main() {
int myArray[5] = {1, 2, 3, 4, 5};
int sum = 0;
for (int i = 0; i < 5; i++) {
sum += myArray[i];
}
double average = (double)sum / 5;
cout << average << endl;
return 0;
}
Copier après la connexion
Utilisez un vecteur pour stocker les notes des étudiants
int main() {
vector<int> scores;
scores.push_back(85);
scores.push_back(90);
scores.push_back(95);
for (vector<int>::iterator it = scores.begin(); it != scores.end(); it++) {
cout << *it << endl;
}
return 0;
}
Copier après la connexion
;
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 de ce site Web
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
La méthode d'utilisation d'une boucle foreach pour supprimer les éléments en double d'un tableau PHP est la suivante : parcourez le tableau, et si l'élément existe déjà et que la position actuelle n'est pas la première occurrence, supprimez-le. Par exemple, s'il existe des enregistrements en double dans les résultats de la requête de base de données, vous pouvez utiliser cette méthode pour les supprimer et obtenir des résultats sans enregistrements en double.
Les méthodes de copie approfondie de tableaux en PHP incluent : l'encodage et le décodage JSON à l'aide de json_decode et json_encode. Utilisez array_map et clone pour créer des copies complètes des clés et des valeurs. Utilisez Serialize et Unsérialize pour la sérialisation et la désérialisation.
La comparaison des performances des méthodes de retournement des valeurs de clé de tableau PHP montre que la fonction array_flip() fonctionne mieux que la boucle for dans les grands tableaux (plus d'un million d'éléments) et prend moins de temps. La méthode de la boucle for consistant à retourner manuellement les valeurs clés prend un temps relativement long.
La fonction array_group_by de PHP peut regrouper des éléments dans un tableau en fonction de clés ou de fonctions de fermeture, renvoyant un tableau associatif où la clé est le nom du groupe et la valeur est un tableau d'éléments appartenant au groupe.
La meilleure pratique pour effectuer une copie complète d'un tableau en PHP consiste à utiliser json_decode(json_encode($arr)) pour convertir le tableau en chaîne JSON, puis à le reconvertir en tableau. Utilisez unserialize(serialize($arr)) pour sérialiser le tableau en chaîne, puis désérialisez-le en un nouveau tableau. Utilisez RecursiveIteratorIterator pour parcourir de manière récursive des tableaux multidimensionnels.
1. Architecture de Llama3 Dans cette série d'articles, nous implémentons Llama3 à partir de zéro. L'architecture globale de Llama3 : Imaginez les paramètres du modèle de Llama3 : Jetons un coup d'œil aux valeurs réelles de ces paramètres dans le modèle Llama3. Image [1] Fenêtre contextuelle (context-window) Lors de l'instanciation de la classe LlaMa, la variable max_seq_len définit la fenêtre contextuelle. Il existe d'autres paramètres dans la classe, mais ce paramètre est le plus directement lié au modèle de transformateur. Le max_seq_len ici est de 8K. Image [2] Vocabulaire-taille et AttentionL
Le tri des tableaux multidimensionnels peut être divisé en tri sur une seule colonne et en tri imbriqué. Le tri sur une seule colonne peut utiliser la fonction array_multisort() pour trier par colonnes ; le tri imbriqué nécessite une fonction récursive pour parcourir le tableau et le trier. Les cas pratiques incluent le tri par nom de produit et le tri composé par volume de ventes et prix.
L'algorithme de fusion et de déduplication de tableaux PHP fournit une solution parallèle, divisant le tableau d'origine en petits blocs pour un traitement parallèle, et le processus principal fusionne les résultats des blocs à dédupliquer. Étapes algorithmiques : divisez le tableau d'origine en petits blocs également alloués. Traitez chaque bloc pour la déduplication en parallèle. Fusionnez les résultats du bloc et dédupliquez à nouveau.