Publicado por: Elzo Brito | 19/11/2009

Algoritmo Bubble Sort – O demonio das buscas

Hoje vou responder um email de uma leitora a Heloisa, que me pediu para falar mais sobre o algoritmo bubble sort, vamos lá.

Algoritmo 1:

  1. Procedimento BubbleSort(Vetor)
  2. var AUX {variavel de apoio}
  3. Inicio
  4. para i=0 até n-1 faça
  5.       para j=0 até n-1 faça
  6.             se vetor[i] > vetor[j] então
  7.                  AUX = vetor[j]
  8.                  vetor[j] = vetor[i]
  9.                  vetor[i] = AUX
  10.             fim_se
  11.        fim_para
  12. fim_para

O Bubble Sort ou “metodo bolha” como é chamado, consiste em correr um vetor comparando cada elemento com o elemento seguinte:

vetor[i] > vetor[j]

No caso de organizar as informações crescente, se o elemento comparadao com o vetor[i] for menor (<) ou igual (=) ao elemento, nada se faz, porém se o elemento comparado com o vetor[i] for maior (>) que o elemento, inverte-se a posição dos 2 elementos, comparando assim com todos os elementos até finalizar o vetor.

O máximo de execuções que esse algoritmo faz para que o vetor fique ordenado é (N-1), em que N é o número de elementos do vetor.

Existe também uma variação do algoritmo Bubble Sort, onde não existe uma variável Auxiliar, para fazer a troca utiliza-se um calculo matemático, no começo parece estranho como ele trabalha mas analisando bem é fácil de assimilar.

vejamos:

Digamos que:

  • j = 5
  • i = 3

Então

  • j = j + i –> 5 + 3 = 8
  • o j agora vale 8
  • i = j – i –> 8 – 3 = 5
  • agora o i vale 5
  • j = j – i –> 8 – 5 = 3
  • agora o j vale 3

Pronto trocamos os vales fazendo calculos, depois disso o valor inverte;

  • j = 3
  • i = 5

Vejamos o algoritmo:

Algoritmo 2:

  1. Procedimento BubbleSort(Vetor)
  2. Inicio
  3. para i=0 até n-1 faça
  4.       para j=0 até n-1 faça
  5.             se vetor[i] > vetor[j] então
  6.                  vetor[j] = vetor[j] + vetor[i]
  7.                  vetor[i] = vetor[j] – vetor[i]
  8.                  vetor[j] = vetor[j] – vetor[i]
  9.             fim_se
  10.        fim_para
  11. fim_para

Utilizando as linguagem de programação PASCAL e C, veremos abaixo como fica o algoritmo nas duas linguagens:

Em Pascal:

  • Procedimento BubbleSort(A:Vetor)
  • var aux, i, j:integer;
  • Begin
  • for i=0 to n-1 do
  • Begin
  •       for j=0 to n-1 do
  •             if A[i] > A[j] then
  •                  aux = A[j];
  •                  A[j] = A[i];
  •                  A[i] = aux;
  •        end;
  • end;
  •  

    Em C

    • void BubbleSort(Vetor A){
    • int aux, i, j;
    • for(i=0;i<n;i++){
    •     for(j=0;j<n;j++){
    •         if(a[i] > a[j]){
    •              aux = a[i];
    •              a[i] = a[j];
    •              a[j] = aux;
    •         }
    •      }
    •   }
    • }
    Publicado por: Elzo Brito | 16/11/2009

    Naruto Shippuuden 472 – Spoilers

    Killer bee se transforma no bijuu e tenta escapar enquanto segurando Sabu-chan e Ponta. Mas a água se move com Kisame no centro, então se ele nada atrás deles, eles não conseguem encontrar o ar.
    Então Killer Bee sugere que já que o Kisame está atrás dele, ele os deixará e tentará escapar por sí, então a água se moverá e eles alcançarão o ar. Mas Kisame ataca Ponta.
    Killer Bee volta para o resgate, e cai na armadilha de Kisame, que o ataca com a barbatana e o leva de volta a uma versão mais baixa do Bijuu.
    Killer Bee libera um único tentáculo e o usa para agarrar Kisame e joga-lo para longe.
    Enquanto isso, Sabu-chan e Ponta saem da água
    Killer Bee diz algo sobre a espada de trovão, mas por sugestão do Hachibi, apenas solta tinta para escapar.
    Mas a fusão de Samehada/Kisame pode sentir o chakra pela pele e ele ataca Killerbee com a barbatana
    Continua
    Kisame cancelou o Suiton e a fusão, e se aproximou do Killerbee, caído e sem se mexer. Ele tenta cortar suas pernas mas Samehada agarra a terra para proteger Killerbee
    Espinhos saem do cabo, forçando Kisame a larga-la, e Samehada pula para perto do Killerbee
    Samehada gostou tanto do chakra de Bee que quer que ele seja seu novo mestre. Ela tenta curar Killerbee com o chakra roubado de Kisame, mas Kisame a chuta para longe
    Kisame agarra uma espada de Killerbee encravada no chão, e se prepara para mata-lo.

    Publicado por: Elzo Brito | 13/11/2009

    Naruto Shippuuden 471 – Hachibi, Segunda Versão

    Pronto mais um capitulo.

    naruto

    Scantrad: #Suki
    Idioma: Portugues
    Formatos: JPG/PNG
    Tamanho: 3,87MB
    Link para Baixar: [Easy Share] [Megaupload] [Ziddu]

    Scantrad:
    #Naruto Global
    Idioma: Portugues
    Formatos: JPG/PNG
    Tamanho: 4,00MB
    Link para Baixar: [EasyShare] [Megaupload] [RapidShare]

    Scantrad:
    #Binktopia
    Idioma: Ingles
    Formatos: JPG/PNG
    Tamanho: 3,87MB
    Link para Baixar: [Easy Share] [Megaupload] [Ziddu]

    Publicado por: Elzo Brito | 12/11/2009

    Naruto 471 – Spoilers

    Parte 1
    Sabu: "A espada mudou…"
    Samehada: "Gigigigigi"
    Killer Bee: "Ah, é? Hoshigaki Kisame … você diz"
    Killer Bee põe o dedo na boca e escreve o nome em um livro.
    Kisame: "Não há tinta que vem da sua boca …… Os rumores estavam certos, ele é um cara de polvo."
    Killer Bee: "Ele vai fazer você chorar de dor! Esse cara de polvo! Wiiiiiii!"
    O manto da besta seguida de sete caudas.
    Sabu: "A forma da besta seguida… Há sete caudas de chakra…! Bee é sério!"
    Killer Bee: "Você sabia?"
    Kisame: "O que?"
    Abelha de assassino ataca Kisame com uma espada em uma mão.
    Killer Bee: "polvos comem tubarões!"
    Samehada evita o ataque de Killer Bee.
    (Kisame acabou de estabilizar Samehada, mas Samehada está se movendo por conta própria, evitando o ataque)
    Sabu: “A espada evitou "!
    Samehada se move e evita ataques de Killer Bee.
    No entanto, comer uma das caudas de Killer Bee.
    Samehada: "Gyagigigiii ~!"
    Kisame: “Parece que desta vez, o tubarão vai comer o polvo”.
    Parte 2
    Sabu: " Ele absorveu o chakra de Killer Bee novamente… Além disso, a espada desse cara ficou enorme!"
    Killer Bee: "Essa espada" Samehada "… É um comilão que come rápido, mas a quantidade de chakra que pode comer em um tempo parece ser de cerca de seis caudas…"
    Ele diminui a quantidade de caudas para um.
    Killer Bee: "Se esta versão está assim… a próxima versão deveria fazer bem…"
    Enquanto isso
    Choujuurou: "Aqui Mizukage-sama. Desta vez é aqui.".
    Mizukage: "Após estes vestígios, Ao não deve está muito longe. Vamos nos apressarmos ".
    Choujuurou: "Sim, senhora!"
    Enquanto isso
    Fu: "Droga … É inútil, como eu pensava …"
    O corpo de Ao se move contra a sua vontade por causa da técnica de Shintenshin, Há um fuda ligado ao seu olho direito (uma barreira de ninjutsu usado por anbu Kiri), ele tenta tirar uma kunai.
    Fu: "Se uma ameaça está no olho é invocado automaticamente hm? Um jutsu que vocês pensado no que é popularmente chamado de processo de troca de corpo… eu nunca pensei que seria tão simples… Quando eu revi o olho, o olho que tem utilizado desta técnica, meu olho é inútil… você sabe disto não é? "
    Ao: As ordens de " Danzou…? o que é aquele pensamento " de subordinado?
    Parte 3
    Fu: Este único olho meu é um pequeno preço a pagar para reduzir o potencial de Kiri de tanta guerra. A barreira está fazendo isto impossível agora mesmo, mas ainda… “Posso tentar, enquanto eu preciso”
    Ao: "O que ele está planejando fazer?"
    Fu: "Se eu pular daqui, não vou ser capaz de tirar a cabeça fora. Se o olho é impossível, não há nada, mas tendo a cabeça inteira de volta a Konoha."
    Fu – usa o corpo de Ao e escala uma árvore, pronto para saltar.
    Ao: " Ele está planejando para morrer "?
    Fu: "Não, quando a cabeça está prestes a sair, eu vou cancelar o Shintenshin… De qualquer forma, você vai morrer… Uma vez que eu estou de volta em meu próprio corpo, eu vou voltar aqui e tomar sua cabeça."
    Ao: "Oh, bem… Se você está indo fazer algo como isso, você tem que tomar cuidado… Se você fizer isso você vai falhar."
    Fu: "O que você quer dizer?"
    Ao: "se você começar mesmo um pouco assustado e cancelar a técnica cedo demais, eu definitivamente vou me defender contra a foice. Supondo que eu não vou morrer… quando você voltar para pegar minha cabeça, nossa situação vai ser invertida, você acha?"
    Fu – usa o corpo de Ao para agarrar a foice. Ele pretendesse e cai.
    Parte 4
    Kisame: “Esta é a primeira vez Samehada que se tornou grande.” Parece que não está de bom humor.
    Oito-Caudas: "Deixe-me sair também, muda sua forma Bee para de besta com caudas!"
    Killer Bee: "Não idiota! Este tipo! Com oito caudas, nossos ataques são muito poderosos, eles vão devastar todo o ambiente. Sem falar que Sabu-chan-sensei e pontes estão aqui conosco. Além disso, eu finalmente consegui esconder o meu corpo. Se eu deixá-lo sair, seria como dizer ‘aqui, aqui é o Bijuu de oito caudas que você procura!
    Oito-Caudas: "Está mal, não é Bee" O que você vai fazer? Você vai usar a versão 2?
    OBS: [Talvez a versão 1 é simplesmente o manto, enquanto a versão 2 é a manto preto (como Naruto na forma de quatro caudas)]
    Killer Bee: "No entanto, na troca de golpes antes, ele roubou quase todo o meu chakra… me emprestar algum de você!"
    Oito-Caudas: "Hmpf, sem mim, você teria sido derrotado há muito tempo"
    Killer Bee: “Que palavras vergonhosas.” Obrigado pela vossa compaixão.
    Killer Bee é transformada em uma besta com sete caudas (o corpo inteiro se torna preto)
    Killer Bee: Vamos…
    Kisame: "Ele liberou seu Bijuu?"
    Sabu: "Não! Este é um poder… Bijuu suprimida em uma forma humana …"
    Parte 5
    Killer Bee: "Falha!!!!"
    Sobre os ombros Killer Bee, algo que olha como o crânio de um touro aparece.
    Samehada: "Pigigigigii!"
    Kisame: " Samehada é saído assim, está tropeçando… O volume do chakra… sua qualidade… é incomparável para antes… Ele é o único dos nove… Ele tem controle tanto ele pode usar isto muito chakra e ainda mantêm a própria personalidade dele…"
    "Ela pode comer até uma tal quantidade…"
    As falhas de Laço em Samehada. Fragmentos de Samehada voar ao redor.
    Sabu: "Ele fez isso!"
    Killer Bee: Me fazendo entrar nesta versão….. você é uma espada, impaciente gulosa!"
    Ele volta para forma de manto de Besta.
    Kisame: "Ele fez isso… ele não…"
    Sabu: "Ainda está vivo! Depressa, preste atenção."!
    Killer Bee: "!?"
    Kisame toca Samehada e a ferida no abdômen dele cura.
    Kisame: "Se o meu adversário é forte, eu vou ficar mais forte em proporção à força … Eu não me canso, nem quebrar."
    Sabu: " A espada rouba da pessoa adversária o chakra dela… em seguida, passa-o para o seu dono como resistência… Isso é combinação?"
    Parte 6
    Kisame: "É por isso que… eu sou chamado um Bijuu sem uma cauda…"
    Libertação da Água: Ondas de Colisão da Água.
    A totalidade da superfície em torno deles torna-se como um mar.
    Kisame: "Se a batalha é prolongada, vou raspar [chakra] e enfraquecê-lo, tanto quanto é prolongado… mas, raspado partes, rapidamente me fortalecer".
    Sabu: "Bee! Você tem que agarrar essa espada desse cara! Essa espada é a chave para a força dele!"
    Kisame funde com Samehada.
    Killer Bee: "!?"
    Kisame: " Se você pode rasgar isto de meu corpo que é "

    Publicado por: Elzo Brito | 12/11/2009

    Olipiadas Rio 2016

     olipiadas

     olipiadas2

    Postagens Antigas »

    Categorias