Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Il y a déjà eu une discussion à propos de l'opérateur [], selon laquelle il est en quelque sorte trop lent pour un langage C++ comme celui-ci. Je ne pensais pas que c'était si lent qu'ArrayCopy puisse le démolir.
C'est une question distincte sur les incréments dans les opérateurs.
Pourquoi tu t'es arrangé tout seul et m'as jeté dehors ? Pas bon.
Je n'ai jeté personne dehors. Ce que j'ai téléchargé, je l'ai renvoyé ;)))
Il n'a jeté personne dehors. Ce que vous avez téléchargé, vous le rendez à ))))
donc vous avez téléchargé le 11, le mien est le 12 (ci-dessous) et vous avez corrigé le 11 et l'avez rendu comme le 13.
Il y a déjà eu une discussion à propos de l'opérateur [], selon laquelle il est en quelque sorte trop lent pour un langage C++ comme celui-ci. Je ne pensais pas que c'était si lent qu'ArrayCopy puisse le démolir.
C'est une question distincte sur les incréments dans les opérateurs.
Il n'y a même aucune raison d'effectuer des opérations inutiles ici. Si le bouclage est en cours. Il n'est pas nécessaire de vérifier si l'élément actuel est hors limites lorsqu'il est copié. Il sera à l'intérieur des limites. Et il n'y a aucun sens à ajouter quelque chose, ou à tirer une variable de plus. Si par défaut, il y a un i.
Bref, il y a toutes sortes de choses banales. Pour information
donc vous avez téléchargé le 11, le mien est le 12 (ci-dessous) et vous avez corrigé le 11 et l'avez rendu comme le 13.
Je n'ai pas fait attention. J'ai remplacé le fichier.
également dessiné dans le cadre de ce concours impitoyable :-)
Encore une fois, non vérifié :-) devrait fonctionner...
Ont recommandé des tests contenant des erreurs (Semko et Pavlov) .
Merci, c'est réparé.
également esquissé dans ce concours impitoyable :-)
Je n'ai pas revérifié :-) ça devrait marcher...
inclus, mais il y a un problème avec la première variante
Je reviens à ma différence incomprise de temps d'exécution de deux boucles presque 100% identiques en logique et en nombre de contrôles et de sommes :
Donc, encore une fois, pourquoi une telle variante du code de Kuznetsov :
fonctionne plus de deux fois plus vite que celui-ci, qui fait exactement la même chose :
Quelles sont les merveilles du compilateur ?
Est-ce vraiment possible pour un tel design :
while(arr[i]!=x && i<j) i++;le compilateur trouve une commande spéciale de recherche de l'assembleur pour le processeur ? Mais il y a une vérification supplémentaire i<j à l'intérieur, n'est-ce pas ?
Parce que la même chose à travers pour est exécutée beaucoup plus lentement :
Je joins le code du script de démonstration
C'est ainsi que cela se passe souvent. Vous vous occupez de quelques déchets inutiles et vous découvrez quelque chose de plutôt intéressant.
Développeurs, pourriez-vous jeter un coup d'œil au code exécutable et voir ce qui fait cette différence ?
Vous devez comprendre la logique du compilateur afin de créer des algorithmes plus optimaux à l'avenir.
Observation intéressante. et pour l'intérêt, j'ai exécuté le code
Je reviens à ma différence incomprise de temps d'exécution de deux boucles presque 100% identiques en logique et en nombre de contrôles et de sommes :
Donc, encore une fois, pourquoi une telle variante du code de Kuznetsov :
fonctionne plus de deux fois plus vite qu'une autre qui fait exactement la même chose :
Quelles sont les merveilles du compilateur ?
Est-ce vraiment possible pour une construction comme celle-ci :
le compilateur trouve une commande spéciale de recherche de l'assembleur pour le processeur ? Mais il y a une vérification supplémentaire i<j à l'intérieur, n'est-ce pas ?
Parce que la même chose à travers pour est exécutée beaucoup plus lentement :
Je joins le code du script de démonstration
C'est ainsi que cela se passe souvent. Vous vous occupez de quelques déchets inutiles et vous découvrez quelque chose de plutôt intéressant.
Développeurs, pourriez-vous jeter un coup d'œil au code exécutable et voir ce qui fait cette différence ?
Vous devez comprendre la logique du compilateur afin de créer des algorithmes plus optimaux à l'avenir.
Je pense que c'est un bon match pour les drapeaux :
http://osinavi.ru/asm/4.php
Et pour les opérateurs/comparaisons inutiles...