Análise de Algoritmos Passo a Passo (Parte 2) | xavecoding

Поділитися
Вставка
  • Опубліковано 14 лис 2024

КОМЕНТАРІ • 35

  • @Esmael-z9l
    @Esmael-z9l Місяць тому

    Sensacional.

  • @jonasjr.
    @jonasjr. Рік тому +7

    Excelente didática professor! Seus 2 videos ensinaram muito mais do que uma matéria inteira da universidade que estou estudando. Grato pelo tempo e conhecimento compartilhado!

  • @ImPH657
    @ImPH657 4 місяці тому +1

    Obrigado, tenho prova de AEDS II amanhã e meu professor é uma ameba.

  • @SuelyjaneCosta
    @SuelyjaneCosta 2 місяці тому

    Aprendi muito com suas explicações. Obrigada!

  • @ivandecleimendes
    @ivandecleimendes Рік тому +2

    Sua explicação é ótima entendi várias coisas que fiquei um ano pra entender . Gostaria de vídeos sobre análise de grafos , seria ótimo.
    Parabéns continue produzindo estes vídeos.

  • @GlaedrDK
    @GlaedrDK 11 місяців тому

    Gostaria de agradecer pela aula, não tive esse conteúdo na faculdade e descobri ele faz alguns meses. Não tenho conhecimento matemático o suficiente então tento descobrir a complexidade pelas dicas e macetes que encontrei na internet e pelo seu vídeo, muito obrigado!

  • @carlosfixo5635
    @carlosfixo5635 9 місяців тому +8

    pq n temos professores assim na faculdade? parece que na faculdade, os professores fazem questão de complicar tudo kkkkkk

  • @cannalbom
    @cannalbom Місяць тому

    vendo em 2024. valeu

  • @RodrigoAdriano
    @RodrigoAdriano 2 місяці тому

    Otimo video, só senti falta da explicação de como funciona o O(n Log n)

  • @FP_AO
    @FP_AO 9 місяців тому

    aula fantastica! simples, direito e objectivo.

  • @valdanoca8319
    @valdanoca8319 9 місяців тому

    Muito obrigado pela explicação, você é bom demais!

  • @julianoneves3983
    @julianoneves3983 11 місяців тому

    exercício:
    letra a) O(n^2)
    letra b) O(n)

  • @pedrojose9833
    @pedrojose9833 Рік тому +1

    Top!!

  • @PauloVitor-pk7bz
    @PauloVitor-pk7bz 8 місяців тому

    Obrigado pela aula fesor

  • @VanessaLopes-xe8qw
    @VanessaLopes-xe8qw Рік тому

    Aula Fantástica! Ótima didática. 👏👏👏👏👏👏👏

  • @avila_gl
    @avila_gl Рік тому +1

    melhor professor de computação do youtube!

    • @xavecoding
      @xavecoding  Рік тому +2

      Obrigado, Guilherme 🤖
      Fico muito feliz pelas palavras.
      O canal voltará com vários novos vídeos muito em breve.
      Fique ligado ✌️

  • @mandyysz
    @mandyysz 9 місяців тому

    Obrigada moço ❤

  • @ederfernandes2065
    @ederfernandes2065 Рік тому

    melhor didática, melhor linguagem, melhor prof., estou passando perrengue pra entender essa análise toda de algoritmo, mas agora estou vendo uma luz no túnel com suas aulas, obgdo, abraço!!

    • @xavecoding
      @xavecoding  Рік тому

      Obrigado 🤖.
      Fico contente por isso, Eder. Continue firme seus estudos.
      O canal voltará muito em breve com muitos conteúdos sobre algoritmos, desenvolvimento web e ciência de dados.
      Fique ligado ✌️

  • @jorgecomparato329
    @jorgecomparato329 Рік тому +1

    Muito didatico! Bom trabalho executado mestre!

    • @xavecoding
      @xavecoding  Рік тому +1

      Obrigado, Jorge 🤖
      O canal voltará com vários novos vídeos muito em breve.
      Fique ligado ✌️

  • @matheusmotta5413
    @matheusmotta5413 Рік тому

    Obrigado pela excelente aula

    • @xavecoding
      @xavecoding  Рік тому +2

      Obrigado 🤖.
      O canal voltará muito em breve com muitos conteúdos sobre algoritmos, desenvolvimento web e ciência de dados.
      Fique ligado ✌️

  • @meucelularkrl
    @meucelularkrl Рік тому +3

    Teremos mais aula sobre análise de algoritmos?

    • @xavecoding
      @xavecoding  Рік тому +3

      Teremos!
      O canal voltará muito em breve com muitos conteúdos sobre algoritmos, desenvolvimento web e ciência de dados.
      Fique ligado ✌️

    • @meucelularkrl
      @meucelularkrl Рік тому

      @@xavecoding ihaaaa 🤠

    • @luccadioliveira
      @luccadioliveira Рік тому +1

      ihaaaa 🤠

  • @jonasfrancomatador1277
    @jonasfrancomatador1277 Рік тому

    Errei a O(n²) só porque esqueci de que n*n = n².

  • @araujored1146
    @araujored1146 2 роки тому

    Gostei muito dessas aulas. Mas eu queria saber uma coisa: A finalidade da análise assintotica dentro da programação... No que isso ajudaria no dia a dia de um programador?

    • @xavecoding
      @xavecoding  2 роки тому +4

      Oi, Araujo.
      Resposta simples: te ajuda a entender o quão eficiente é um dado algoritmo (em termos de tempo e/ou espaço de memória) para avaliar sua aplicabilidade em dada aplicação ou compará-lo com outros algoritmos para a mesma aplicação.
      Imagine a seguinte situação bem hipotética. Você trabalha numa empresa que desenvolveu um e-commerce. Os usuários podem buscar por determinados produtos, podendo ordenar sua visualização por aqueles com menor preço.
      A solução mais simples para esse problema seria:
      1) O sistema busca todos os produtos relacionados à busca do usuário (e.g., livros de computação)
      2) Ordena os produtos pelo menor preço
      3) Apresenta na tela os resultados encontrados
      Imagina que há milhares de produtos relacionados à busca. Há vários algoritmos de ordenação, sendo que cada um possui uma dada complexidade de tempo. Usar um algoritmo "lento" na etapa (2) pode fazer com que o tempo de resposta para o usuário seja muito demora. Imagine o usuário realizar uma busca e demorar minutos pra retornar a resposta. Consequentemente, é provável que você perdesse o cliente.
      O ideal seria usar o algoritmo mais rápido possível que seja adequado ao seu problema.
      Saber como identificar a complexidade de algoritmos também lhe faz desenvolver algoritmos mais eficientes. Você pode desenvolver diferentes algoritmos com diferentes estruturas de dados que lhe retornarão o mesmo resultado, porém em tempos de execução diferentes. Conforme você vai ganhando experiência como programador, começará a aprender certas técnicas e estruturas mais eficientes para resolver certos problemas corriqueiros. Saber a complexidade de tempo de tais técnicas/algoritmos lhe ajudará a tomar a melhor escolha.

    • @araujored1146
      @araujored1146 2 роки тому

      @@xavecoding aah sim, isso faz muito sentido mesmo! Obrigado, cara. E sua didática é muito boa, merece mais reconhecimento! Vlw

  • @k.manjericao1583
    @k.manjericao1583 9 місяців тому +1

    Não entendi a explicação pq vc disse nlog(n) é igual ou maior que 1, mas para n=1, log(n)=0 e aí nlog(n) seria zero. Fiquei confusa.

    • @juliermearaujo
      @juliermearaujo 3 місяці тому +1

      Olá. Faz sentido o que ele mencionou. E sua observação também faz sentido.
      Se você compara o valor de 'n' com o valor de 'nlogn', sendo 'n' valores maiores ou iguais a 1 e menores que 10, O(n) será realmente maior que O(nlogn). Por exemplo:
      - Para n = 5 temos:
      O(n) = 5
      O(nlogn) = 3,49 ~ 3,5
      - Para n = 9 temos:
      O(n) = 9
      O(nlogn) = 8,5
      - Para n = 10 já temos uma igualdade entre O(n) e O(nlogn).
      O(n) = 10
      O(nlogn) = 10
      Então, para qualquer valor de entrada com n > 10, O(nlogn) será maior que O(n). E como estamos falando de análise de pior caso sempre teremos uma quantidade enorme de entradas, o que remeterá a O(nlogn) sendo sempre maior que O(n).
      Sua observação está correta ao perceber que quando n = 1 tem-se O(n) = 1 e O(nlogn) = 0. Como mencionei, isso só ocorre com 'n' sendo valores entre 1 e 9. Com 'n' sendo valores maiores que 10, O(nlogn) sempre será maior que O(n).
      Então, quando o professor fala que em 'nlogn', o 'logn' será >= 1, ele está querendo ressaltar que sempre haverá um fator multiplicativo vinculado ao n (que é o logn). Um hora esse fator multiplicativo vai começar a fazer uma grande diferença. E como já mencionado, essa hora é exatamente quando 'n' passar a ser maior que 10.
      Espero ter ajudado.