Ao utilizar este site, você concorda com a Política de Privacidade e os Termos de Uso.
Aceitar

Credited

Portal de conteúdos confiáveis

  • Notícias24h
  • Finanças
  • Economia
  • Carreira
  • Negócios
  • Tecnologia
Pesquisar
  • Animais
  • Automóveis
  • Casa e Decoração
  • Ciência
  • Educação
  • Entretenimento
  • Gastronomia
  • Guia de Compras
  • Marketing Digital
  • Mensagens
  • Nomes e Apelidos
  • Relacionamentos
  • Saúde
  • Significados
  • Símbolos e Emojis
  • Telecomunicações
  • Utilidades
  • Ferramentas
  • Contato
  • Política de Privacidade
  • Termos de Uso
  • Glossários
  • Web Stories
Notificação
Redimensionador de fontesAa

Credited

Portal de conteúdos confiáveis

Redimensionador de fontesAa
  • Finanças
  • Economia
  • Carreira
  • Negócios
  • Tecnologia
Pesquisar
  • Notícias
  • Categorias
    • Finanças
    • Economia
    • Carreira
    • Negócios
    • Tecnologia
    • Marketing Digital
    • Automóveis
    • Educação
    • Casa e Decoração
    • Guia de Compras
    • Entretenimento
    • Relacionamentos
    • Saúde
    • Gastronomia
    • Animais
    • Telecomunicações
    • Significados
    • Utilidades
    • Mensagens
    • Nomes e Apelidos
    • Símbolos e Emojis
    • Web Stories
    • Glossários
  • Ferramentas
Siga-nos
PUBLICIDADE

Página Inicial > Glossários > K

Karatsuba Algorithm

Escrito por Redator
Publicado 20 de março de 2025, às 05:58
Compartilhar
4 min de leitura

Algoritmo de Karatsuba: O que é?

O Algoritmo de Karatsuba, inventado por Anatoly Karatsuba em 1960 e publicado em 1962, é um algoritmo eficiente para multiplicar números inteiros grandes. Ele reduz a multiplicação de dois números de n dígitos para, no máximo, 3 multiplicações de números de n/2 dígitos, além de algumas adições e deslocamentos. É, portanto, mais rápido que o algoritmo clássico de multiplicação, especialmente para números muito grandes.

Como Funciona o Algoritmo de Karatsuba?

A ideia central do Algoritmo de Karatsuba reside na divisão e conquista. Considere dois números inteiros, x e y, cada um com n dígitos (assumindo n ser par para simplificar). Podemos dividi-los em duas partes iguais:

CONTINUA APÓS A PUBLICIDADE

x = a * 10^(n/2) + b

y = c * 10^(n/2) + d

CONTINUA APÓS A PUBLICIDADE

Onde a, b, c e d são números de n/2 dígitos.

RECOMENDADO PARA VOCÊ

Kreditexperte
KCM (Kondisi Cash Management)
Crise de asma

A multiplicação tradicional seria:

x * y = (a * 10^(n/2) + b) * (c * 10^(n/2) + d) = a*c * 10^n + (a*d + b*c) * 10^(n/2) + b*d

Isso requer quatro multiplicações: a*c, a*d, b*c e b*d.

CONTINUA APÓS A PUBLICIDADE

Karatsuba percebeu que podemos calcular x * y usando apenas três multiplicações:

  1. p = a * c
  2. q = b * d
  3. r = (a + b) * (c + d)

Então, x * y = p * 10^n + (r – p – q) * 10^(n/2) + q

A chave aqui é que (r – p – q) = a*d + b*c, eliminando uma multiplicação.

Complexidade do Algoritmo de Karatsuba

O Algoritmo de Karatsuba tem uma complexidade de tempo de O(nlog23), que é aproximadamente O(n1.585). Isso é significativamente melhor do que a complexidade O(n2) do algoritmo de multiplicação tradicional. A melhoria se torna mais pronunciada à medida que o tamanho dos números aumenta.

CONTINUA APÓS A PUBLICIDADE

Aplicações do Algoritmo de Karatsuba

O Algoritmo de Karatsuba é amplamente utilizado em bibliotecas de matemática e criptografia para realizar multiplicações de inteiros grandes de forma eficiente. Ele é particularmente útil em sistemas que lidam com números de alta precisão, como em cálculos científicos, financeiros e em algoritmos de criptografia de chave pública, onde a velocidade da multiplicação é crucial. Além disso, o conceito de divisão e conquista utilizado no algoritmo de Karatsuba serve como base para outros algoritmos mais avançados de multiplicação, como o algoritmo de Schönhage-Strassen.

Karatsuba Algorithm e a Multiplicação Rápida

O algoritmo de Karatsuba representa um marco na área de multiplicação rápida. Antes de sua descoberta, a multiplicação de números grandes era uma operação computacionalmente cara. Karatsuba demonstrou que era possível reduzir a complexidade dessa operação, abrindo caminho para o desenvolvimento de algoritmos ainda mais eficientes. Sua abordagem de divisão e conquista influenciou significativamente o design de algoritmos em diversas áreas da ciência da computação.

Implementação e Otimização do Algoritmo de Karatsuba

A implementação do algoritmo de Karatsuba pode ser otimizada de diversas formas. Uma técnica comum é usar o algoritmo de multiplicação tradicional para números pequenos, pois o overhead da recursão pode superar os benefícios do algoritmo de Karatsuba para entradas pequenas. Outra otimização envolve o uso de aritmética de ponto flutuante para realizar as multiplicações, o que pode ser mais rápido em algumas arquiteturas de hardware. A escolha da base numérica (por exemplo, base 10 ou base 2) também pode afetar o desempenho do algoritmo.

Compartilhe este artigo
Facebook Whatsapp Whatsapp Telegram
PUBLICIDADE

Você também pode gostar

Kit Econômico-Fiscal

Kreditstruktur

Câncer de pele histiocitose de células de Langerhans

Colchicina

Kapitalisten

Kapitalização

Konsumverhalten

Kaufabschluss

Siga-nos
2020 - 2025 © Credited - Todos os direitos reservados.
  • Contato
  • Política de Privacidade
  • Termos de Uso
  • Glossários
  • Web Stories