• [^] # Re: permutations

    Posté par . En réponse au message problème sur Codecademy réaffecter deux valeurs. Évalué à 1. Dernière modification le 25 juillet 2017 à 08:49.

    Et sont remplacés par un problème qui est probablement encore plus fréquent (quand a et b ont la même valeur, l'algorithme met les 2 valeurs à 0).

    Heu... Non :-)

    a = 3;
    b = 3;
    #b = a ^ b;
    b = 0
    # a = a ^ b; 
    a = 3
    # b = a ^ b;
    b = 3
    

    Non, l'algorithme est correcte. En fait, c'est exactement le même que l’algorithme au dessus, mais bit à bit.

    En python, la bonne manière de faire est celle de François Guerin.
    Il faut arrêter de se dire que plus un code repose sur une technique complexe, plus il est stylé/beau. C'est faux. Pas de bénéfice et des inconvénients par rapport à la méthode standard, ça veut dire que c'est un mauvais code.

    Ça c'est vrai. À ce sujet j'adore cette phrase de Brian Kernighan :

    Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?

    Pour les non anglophones :

    Tout le monde sait que déboguer est deux fois plus difficile qu'écrire un programme. Donc si vous écrivez le code aussi malin que vous le pouvez, comment allez vous le déboguer ?