Je trier mon tableau de voiture de deux façons. un par an qui est montré ci-dessous. et un autre par marque. Make est un char * Comment puis-je comparer les chaînes quand je n'ai que des pointeurs?C ou C++. Comment comparer deux chaînes données avec des pointeurs char *?
int i, j;
for(i=0; i<100; i++){
for(j=0; j<100-i; j++){
if(carArray[i]!=NULL && carArray[j]!= NULL && carArray[j+1]!=NULL){
if(carArray[i]->year > carArray[j+1]->year){
swap(carArray[j], carArray[j+1]);
}
}
}
}
La méthode ci-dessus fonctionne pour int (année). Comment puis-je le faire fonctionner pour les pointeurs char?
Sur une note sans rapport: vous savez ce genre de bulle est super-duper inefficace, non? – rlbond
Sur de très grandes entrées, il est inefficace. Sur de petites tailles d'entrée, il peut en réalité être plus rapide que les sortes plus sexy, en raison de sa simplicité d'implémentation. Bien sûr, sur les petites entrées (comme celle-ci), la vitesse n'est pas vraiment un problème de toute façon. –
Mais si vous cherchez à trier les petites entrées, vous pouvez aussi utiliser le tri d'insertion, qui a une meilleure performance moyenne, même si c'est aussi O (n^2) – bobDevil