Je suis en train de mettre en œuvre la fonction de vérifier l'égalité Deque en C. L'algorithme de la fonction devrait être comme:l'égalité Contrôle de deux conteneurs Deque en C
bool isDequeEqual(Deque d1,Deque d2)
{
if size of d1 and d2 are different
then
return false
loop from front to rear of both dequeue
if element at current position of d1 != element at current position of d2
then
return false
else
continue
if loop ends return true
}
J'ai mis en œuvre la plupart de la logique, mais pas obtenir comment comparer si les éléments de la position actuelle dans d1 et d2 sont identiques. Le type de données que le conteneur Deque contient peut être un type de données basique ou dérivé. Dans ce cas, comment puis-je vérifier si le contenu à l'emplacement actuel est le même? J'ai également essayé de vérifier comment cela est implémenté dans std::Deque
. Mais je ne comprends pas exactement comment cela se fait dans la bibliothèque Deque.h.
Aidez-nous s'il vous plaît.
Édition1: Le conteneur Deque peut contenir n'importe quel type de données par ex. int, char array, structure etc.
Je suppose que vous voulez dire C++ non c – pm100
Non, je ne mets en œuvre que dans C. J'ai implémenté toutes les fonctions moi-même et n'utilise pas std :: Deque –
généralement, vous ne pouvez pas - à moins qu'un opérateur/fonction d'égalité ne soit fourni (sauf si vos structures sont comparables bytewise, mais pour les dérivées - non) - pour la comparaison bytewise peut essayer 'memcmp' –