Partage
  • Partager sur Facebook
  • Partager sur Twitter

Multiplication avec gestion de débordement

Sujet résolu
    5 février 2025 à 17:39:04

    Ah, je ne connaissais pas std::valarray. Y a-t-il un réel intérêt à remplacer std::vector par std::valarray ? Si oui, j'ai des adaptations à faire dans mon code pour que ça fonctionne (j'utilise des reverse iterators qui ne sont pas disponibles sur std::valarray par exemple). Je vois que la fonction slice m'a peut-être l'air intéressante pour l'usage de la multiplication de Karatsuba plutôt que de créer des tableaux intermédiaires.

    -
    Edité par P'tit Ju 5 février 2025 à 17:40:44

    • Partager sur Facebook
    • Partager sur Twitter
    Le premier et meilleur outil de l'Homme reste encore et toujours son cerveau.
      5 février 2025 à 19:30:59

      > Y a-t-il un réel intérêt à remplacer std::vector par std::valarray ?

      Ça va dépendre si tu as des boucles qui parcours plusieurs séquences en parallèle puisque c'est ça qui sera optimisé. Boucle à ne pas écrire soit-même puisque valarray le fait tout seul. Mais comme le standard n'impose rien, le gain dépendra de la STL utilisée.

      Pour un itérateur inversé, il y a std::reverse_iterator, mais pas de possibilité de gagner quoi que se soit avec.

      Mais dans ton cas où il y a des conditions dans les boucles, des retenus à propagé, etc, pas certain que c'est exploitable. std::valrray est bon quand on opère sur un groupe d'indice indépendant entre-eux.

      • Partager sur Facebook
      • Partager sur Twitter

      Multiplication avec gestion de débordement

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      • Editeur
      • Markdown