RESOLVENDO DESAFIO DE ALGORITMOS DO GOOGLE

  Рет қаралды 33,479

Fernanda Kipper | Dev

Fernanda Kipper | Dev

Күн бұрын

Nesse vídeo iremos resolver um dos desafios mais DIFICEIS listados na lista de Top Questions da GOOGLE no Leetcode. Esse tipo de desafio é muito comum em procesos seletivos para vagas de desenvolvedor, por isso, é super importante estarmos preparados
NÃO LEIA!
---------------
🎁 COMPRE SUA CHAVE DE SEGURANÇA COM 10% OFF (cupom KIPPERDEV10)
shop.lockeet.com/
🔗 Link do Desafio
leetcode.com/problems/wildcar...
🔗 Algoritmo Wildcard Pattern Matching
www.geeksforgeeks.org/wildcar...
👉 Me siga no instagram!
/ kipper.dev
👉 Seja também um membro do canal e tenha benefícios exclusivos!
/ @kipperdev
🌎 Comunidade do Discord
/ discord
Capítulos:
00:00 Introdução
00:47 DESCONTO ESPECIAL
02:25 Dicas para processos seletivos
06:27 Lendo o desafio
09:47 Automatos
10:44 Lendo os exemplos do desafio
12:09 Desenvolvendo o desafio
26:25 Submetendo o desafio
27:16 Assiste essa live e deixa o like!

Пікірлер: 104
@deni-77
@deni-77 7 ай бұрын
Mulher inteligente é outro nível 😍
@SamGoularte
@SamGoularte 7 ай бұрын
A Fê é sem dúvidas a dev mais didática do KZbin, fora o conteúdo de qualidade inquestionável!
@kipperdev
@kipperdev 7 ай бұрын
Muito obrigadaa, Sam 💜 E vocês são, sem dúvida, a melhor comunidade do KZbin!
@jvlsgames4446
@jvlsgames4446 7 ай бұрын
Muuuuu
@SamGoularte
@SamGoularte 7 ай бұрын
@@jvlsgames4446 tá tentando se comunicar com quem gado ?
@fsanti21
@fsanti21 7 ай бұрын
Seus vídeos são MTOOO bons, estão me ajudando DEMAIS, vi o do pic pay e agora esse do google, MTO obrigado por compartilhar. Parabéns pelo conteúdo.
@kipperdev
@kipperdev 7 ай бұрын
Muitoo obrigada, de verdade! Fico feliz que dos vídeos tem ajudado 💜
@medanielsantos
@medanielsantos 8 ай бұрын
Já cheguei dando o like, já sabendo que o vídeo vai ser top
@kipperdev
@kipperdev 7 ай бұрын
Valeuuu Dan! 💜
@rafaelhuber8631
@rafaelhuber8631 7 ай бұрын
Ao ouvir o desafio, inicialmente me senti confuso, mas sua explicação tornou mais fácil de compreender! Ainda assim, o nível de dificuldade é bastante very hard. Conteúdo de alta qualidade!!
@kipperdev
@kipperdev 7 ай бұрын
Que bomm que ajudou você a entender, Rafa 💜
@eunicevilar3086
@eunicevilar3086 7 ай бұрын
Que oratória boa e firmeza ao falar 😮😮 demais!!!!!
@kipperdev
@kipperdev 7 ай бұрын
Muito obrigadaa, Eunice 💜
@matheuslouzada1427
@matheuslouzada1427 7 ай бұрын
conteúdo top dms, Fê vai crescer muito ainda nessa plataforma
@kipperdev
@kipperdev 7 ай бұрын
Muito obrigadaa, Matheus 💜
@FlavioSantos-info
@FlavioSantos-info 7 ай бұрын
Muito legal! Parabéns. Imagino o quanto deu trabalho, ao fim do código, você não vê nada demais a nível de código, mas o desafio de raciocínio lógico é bem puxado. Pensar em todos os casos, testar o andamento de cada etapa... Em fim. Você tá dando um suporte sensacional a comunidade. Sucesso!
@kipperdev
@kipperdev 7 ай бұрын
Muito obrigadaa, Flávio 💜 Pois é, o código por si só não é nada demais mesmo, a questão toda é a lógica pra montar ele. Fico feliz que você goste do conteúdo, Flávio 💜 Sucesso para você também!
@rodrigoalves-ek6xm
@rodrigoalves-ek6xm 7 ай бұрын
Muito bom! sou iniciante e to querendo aprender mais! perfeito o video!
@kipperdev
@kipperdev 7 ай бұрын
Boaa, Rodrigo, que bom que ajudou você 💜 Agora é praticar bastante! Sucesso!
@claudemirribeiro9937
@claudemirribeiro9937 15 күн бұрын
Parabéns mil likes pelo conteúdo !!!!, porém fiquei confuso ao ver a variável temporária para gravar o índice de s quando encontra *, para mim fica mais fácil com uma variável somente, já que a string será sempre consumida, dessa forma sIndex++ é o suficente para o algoritmo. public static boolean isMatch(String s, String p) { int sIndex = 0; int pIndex = 0; int pStartIndex = -1; while (sIndex < s.length()) { if (pIndex < p.length() && compareChar(s.charAt(sIndex), p.charAt(pIndex))) { sIndex++; pIndex++; } else if (pIndex < p.length() && p.charAt(pIndex) == '*') { pStartIndex = pIndex; pIndex++; } else if (pStartIndex != -1) { pIndex = pStartIndex + 1; sIndex++; } else { return false; } } while (pIndex < p.length() && p.charAt(pIndex) == '*') { pIndex++; } return p.length() == pIndex; }
@Tennezy
@Tennezy 7 ай бұрын
Estou aprendendo a programar na linguagem JavaScript , estou adotando ver estes desafios 🙂 e espero chegar até esse nível de pensar que tú tens !
@felipemaxrosa
@felipemaxrosa 7 ай бұрын
Ola Fe @kipperdev, obrigado por mais um conteudo! Top demais... abraco!
@kipperdev
@kipperdev 7 ай бұрын
Obrigada Lipe! 💜
@GabrielSilva-en4qp
@GabrielSilva-en4qp 7 ай бұрын
Apoio mais videos nessa pegada
@kipperdev
@kipperdev 7 ай бұрын
Boa! Valeu Gab 😊
@Tiago_Lira
@Tiago_Lira 7 ай бұрын
Parabéns pelo conteúdo!
@kipperdev
@kipperdev 7 ай бұрын
Muito obrigadaa, Tiago 💜
@GilsonFabiano
@GilsonFabiano 7 ай бұрын
Bacana o conteúdo ajuda bastante os dev's iniciante. Parabéns!
@sparksGTO
@sparksGTO 7 ай бұрын
Iniciante? Eu já sou velho de guerra e nem lembro mais de autômatos. Acho que dormi nessa aula. Eu não sei raciocinar a respeito do problema. E até que me despertou um interesse, esse tipo de raciocínio matemático agora na era que estaremos a adentrar será super legal compreender.
@sparksGTO
@sparksGTO 7 ай бұрын
Me lembrou redes neurais! Bias, variância e bla bla bla
@GilsonFabiano
@GilsonFabiano 7 ай бұрын
@@sparksGTO Achei essa questão pra iniciantes treinar o raciocínio lógico e a interpretação do problema. Lembrando que qualquer autômato vira um regex :)
@kipperdev
@kipperdev 7 ай бұрын
Obrigada Gilson!! 💜
@BrunoLopese1
@BrunoLopese1 7 ай бұрын
Eu já fiz alguns e realmente o problema é o tempo. Na maioria dos casos são coisas que dão pra resolver, mas o tempo conta muito.
@kipperdev
@kipperdev 7 ай бұрын
Pois é!
@Genioinvestidor20
@Genioinvestidor20 6 ай бұрын
Entendi bem a sintaxe e alguns comandos, eu não sou de JS, eu tenho estudado Java, e juntamente com a explicação deu pra entender bem o geral, contudo a parte do Index e do Lenght, pq assim e n assim, eu fiquei meio perdido kkkkkk mas eu não sou de JS msm, espero entender melhor quando eu ir pra essa área, mas vc explica tão bem que alguém que ainda está com Python, ou até Portugol aprendendo a lógica de programação, entenderia o pq de alguns códigos, eu adoro assistir essas resoluções pq aprendo MT, e me dá uma base do q é realmente programar e como ler desafios e jogar a resolução em código
@osmartakashi
@osmartakashi 7 ай бұрын
Caramba, esse foi tenso!
@ThiagoTTBK
@ThiagoTTBK 7 ай бұрын
Muito bom!!! Alguém conhece algum site com esses desafios, mas totalmente em PT-BR?
@Eliasdevcode
@Eliasdevcode 7 ай бұрын
Não entendi o problema nem a solução 😢. Tô com o meme do Portela "como alguém pode ter escrito isso e eu não entender"
@juniors2571
@juniors2571 7 ай бұрын
Estou na mesma situação! No começo não estava entendendo nada aí quando chegou no final parecia que eu estava no começo.😂
@danielaraujo3010
@danielaraujo3010 7 ай бұрын
Eu entendi tudo 😘
@gmailrenato
@gmailrenato 7 ай бұрын
​@@danielaraujo3010explica para eles então
@joaomaciel5689
@joaomaciel5689 7 ай бұрын
Sinto o mesmo, mas sabendo que isso faz parte do processo seletivo, vou começa a estudar mais isso, sou bom com os códigos, mas em ter esse raciocínio lógico, tá osso
@thiagotk987
@thiagotk987 7 ай бұрын
Você é fraco, te falta brio 😂
@danilokrausz9103
@danilokrausz9103 4 ай бұрын
Uma dúvida, ali onde vc faz o return pIndex === p.length ... o ultimo índice não vai ser menor sempre? já q começa no 0 a string? exemplo.. o length da string teste é 5 mas o ultimo índice é 4.
@iasmim7624
@iasmim7624 7 ай бұрын
Muito bom
@kalelchaves6667
@kalelchaves6667 7 ай бұрын
Parabéns pelo vídeo e pela didática! E DEVS por favor! Antes de estudar frameworks estudem MUUUITOOOOO algoritmos! Lógica de programação! Isso é sempre 90% do dia a dia aí depois apliquem o raciocínio lógico adquirido com os framework para juntar as peças
@RodrigoPinheiroMatias
@RodrigoPinheiroMatias 6 ай бұрын
me diz uma coisa não pode usar as libs nativas da linguagem geralmente já tem afds em várias langs parabéns pelo vídeo
@djfiguranunes
@djfiguranunes 2 ай бұрын
Parabéns Fê
@kipperdev
@kipperdev 2 ай бұрын
Obrigada!! 💜
@vito866
@vito866 7 ай бұрын
Adoro desafios de algoritmos. O problema para mim, na maioria dos casos, é o tempo limite de execução do código, ai tem que evitar ao maximo loops condicionais e etc
@kipperdev
@kipperdev 7 ай бұрын
Simmm, também sofro com isso, normalmente por que criamos uma solução com complexidade de tempo maior do que a complexidade de tempo “aceita” pra esse problema. Mas é bom pra treinar otimizar os nossos códigos tbm hahaha
@vito866
@vito866 7 ай бұрын
@@kipperdev simmm d+
@ExplorerKusakabe
@ExplorerKusakabe 7 ай бұрын
Muito legal essa iniciativa sua Fernanda. Acho que para tornar melhor a explicação você poderia fazer uma explicação mais visual, mostrando passo por passo.
@kipperdev
@kipperdev 7 ай бұрын
Obrigadaa, Zaine 💜 E obrigada pela sugestão!
@leofg88
@leofg88 5 ай бұрын
Os exercicios então são bem semelhantes aos das maratonas de programação? e envolvem temas como EDs, DPs, Geometria, Grafos...?
@alexandrenabarrete8849
@alexandrenabarrete8849 10 күн бұрын
o medium do leetcode pode ser duro hahaha
@rodrigonicodemou1123
@rodrigonicodemou1123 7 ай бұрын
Velho, essas paradas de lógica são muito massa. Gosto de ver como ela resolve os desafios, apesar desse ela ter feito antes... Uma coisa que eu observo; é... você não acha que seria mais "esclarecedor" nomear as variáveis de forma mais clara (pelo menos quando for para explicar), ou tem algum motivo mais específico do porquê de você ter nomeado como "pindex"? Sou mais da área criativa, e apesar de ser ruim em lógica, eu amo desafios.
@mariodevelopersantos1102
@mariodevelopersantos1102 7 ай бұрын
cada pessoa acha melhor de um jeito. pra mim ficou muito claro ao que se referia cada uma das variáveis
@kipperdev
@kipperdev 7 ай бұрын
Que legal que você gosta, Rodrigo! Quanto ao nome da varável, é bem o que o Mario comentou: um "nome claro" pra uma variável é relativo. "X" pode ser um nome claro quando estiver em um contexto de cálculos de área, por exemplo. Mas vou tentar cuidar ainda mais pra deixar o mais claro possível, Rodrigo 💜
@adriannparanhos3827
@adriannparanhos3827 7 ай бұрын
A questão ai é: O conteudo dela é pra quem entende de programação. A variavel pIndex esta extremamente autoexplicativa para quem é da área.
@gabrielmore1872
@gabrielmore1872 7 ай бұрын
O algoritmo ficou bem robotizado e muito parecido com a solução oferecida pelo chat GPT 🤔
@kipperdev
@kipperdev 7 ай бұрын
Esse algoritmo “Wildcard Pattern Matching” é um algortimo conhecido, então todas soluções serão um pouco parecidas. Tipo o algortimo de ordenação QuickSort… Eu também não o conhecia, mas quando tava estudando pra resolver o problema pro vídeo, conheci ele, e inclusive me baseei no artigo do Geeks for Geeks www.geeksforgeeks.org/wildcard-pattern-matching/amp/ E agora que você mencionou fui perguntar a solução pro ChatGPT pra ver o que ele faria, e vi que ele seguiu o padrão comum do algoritmo….
@matheusmrno
@matheusmrno 7 ай бұрын
essa câmera ficou tão bem posicionada que parece que você ta na europa!
@kipperdev
@kipperdev 7 ай бұрын
Ahahahahahaha
@jvlsgames4446
@jvlsgames4446 7 ай бұрын
Não entendi uma palavra se quer do início ao fim, más algum dia chego lá
@fischerdev
@fischerdev 7 ай бұрын
Similar a cláusula Like de qualquer banco SQL Ms Access usa * Todos os outros bancos usam %
@sinvalfelisberto
@sinvalfelisberto 7 ай бұрын
Segundo. Massa demais!
@kipperdev
@kipperdev 7 ай бұрын
Valeuu Sinval!
@jorge.barcelos
@jorge.barcelos 7 ай бұрын
Eu seria burro demais se dissesse: não entendi bobonica nenhuma
@LivingInLowLevel
@LivingInLowLevel 7 ай бұрын
Nao existe ninguem burro você apenas nao entendeu
@doidao799
@doidao799 5 ай бұрын
Não seria melhor usar RegEx?
@Suporte-Point10
@Suporte-Point10 7 ай бұрын
Esses desafios não podem ser facilmente burlados por alguém usando I.A ?
@gabrielalmeida6085
@gabrielalmeida6085 7 ай бұрын
Fernanda, poderia gravar um vídeo obre como você divide blocos de estudo? Tempo, conteúdo, revisão...
@gustavopereira5679
@gustavopereira5679 7 ай бұрын
Alguém aí sabe como voltar os padrões de configuração do vscode, acabei fuçando no que ñ devia e acabei bagunçando meu VS. ME AJUDEM 😢
@mariodevelopersantos1102
@mariodevelopersantos1102 7 ай бұрын
Isso me lembra o tempo que eu participava das Maratonas de Programação, era bom demais, ficar horas resolvendo desafios e sair com a cabeça doendo, hahahaha
@kipperdev
@kipperdev 7 ай бұрын
hahahah a cabeça implora por um descanso
@mauriciomendes81
@mauriciomendes81 7 ай бұрын
Não daria para resolver com expressão regular?
@kipperdev
@kipperdev 7 ай бұрын
É possível que sim!
@LivingInLowLevel
@LivingInLowLevel 7 ай бұрын
Achei facil o desafio
@usuario9613
@usuario9613 7 ай бұрын
Ainda bem que escolhi medicina 🤣🤣
@gabriel15559
@gabriel15559 7 ай бұрын
Tentei com regex inflemente nao deu, para strings muito grandes com o uso do '*' o regex fica muito inficiente e da timeout kkkkkkkk
@samihenrique
@samihenrique 7 ай бұрын
Dava pra mapear numa regex tbm
@kipperdev
@kipperdev 7 ай бұрын
Boa! Acredito que dava sim, mas não cheguei a tentar
@brunodavi8197
@brunodavi8197 7 ай бұрын
É trapaça usar o RegExp com uma string para resolver esse teste? Das entradas . ou ?
@kipperdev
@kipperdev 7 ай бұрын
Eu acho que não é “trapaça” Bruno! Mas na real, o algoritmo de “Wildcard Pattern Matching” é como se fosse a implementação do regex por baixo dos panos, tipo como se você criasse seu validador de regex ahahaha
@brunodavi8197
@brunodavi8197 7 ай бұрын
@@kipperdev Sim, vi isso no seu vídeo quando você descreveu o problema.
@clealb76
@clealb76 7 ай бұрын
Automatos tive esse lixo na faculdade. Nunca usei isso como dev
@ExplorerKusakabe
@ExplorerKusakabe 7 ай бұрын
Você estudou em qual disciplina?
@mateusfonseca988
@mateusfonseca988 7 ай бұрын
O mais dificil do leetcode, hackerrank é entender o enunciado kkk
@kipperdev
@kipperdev 7 ай бұрын
hahahah simm
@xsamuelx3603
@xsamuelx3603 7 ай бұрын
:)
@xsamuelx3603
@xsamuelx3603 7 ай бұрын
:D
@devmateus9485
@devmateus9485 7 ай бұрын
publico errado da propaganda da chave usb, sou estudante, nao tenho grana nem pra um usb normal
@versaleyoutubevanced8647
@versaleyoutubevanced8647 7 ай бұрын
tendi nada
@apertaplays
@apertaplays 7 ай бұрын
Cara eu vi q realmente preciso de uma explicação muito minunciosa, pois pra mim nao ta fazendo muito sentido a solução e o por que ela é assim como é.
@fischerdev
@fischerdev 7 ай бұрын
DIR DOS (cmd) Dir * Dir ?abc
@andreyrvdev
@andreyrvdev 7 ай бұрын
Não darei mídia para esse vídeo, segundo o lucas montano do canal lucas montano: conteúdo técnico no KZbin não tem alcance, view e visibilidade
@petrucci_dev
@petrucci_dev 3 ай бұрын
vc explicando é ótima, mas eu me senti muito burra tentando entender o que estava rolando kkkkkkkkkk vou voltar aqui depois para tentar entender mais uma vez, obrigada de qualquer forma! sucesso
@kipperdev
@kipperdev 3 ай бұрын
Não se sinta!! As vezes é complicado entender de primeira hahaha 💜
SE VOCÊ É PROGRAMADOR então PRECISA SABER esses FUNDAMENTOS DA COMPUTAÇÃO
16:37
APRENDA DOCKER DO ZERO | TUTORIAL COMPLETO COM DEPLOY
44:15
Fernanda Kipper | Dev
Рет қаралды 84 М.
THEY WANTED TO TAKE ALL HIS GOODIES 🍫🥤🍟😂
00:17
OKUNJATA
Рет қаралды 24 МЛН
Дарю Самокат Скейтеру !
00:42
Vlad Samokatchik
Рет қаралды 7 МЛН
Who has won ?? 😀 #shortvideo #lizzyisaeva
00:24
Lizzy Isaeva
Рет қаралды 63 МЛН
Survival skills: A great idea with duct tape #survival #lifehacks #camping
00:27
Por que e como estudar ALGORITMOS e ESTRUTURA DE DADOS? | Handshake #6
14:44
Programação Dinâmica
Рет қаралды 57 М.
98% Cloud Cost Saved By Writing Our Own Database
21:45
ThePrimeTime
Рет қаралды 321 М.
Why Most Google Employees Quit After 1.1 Years (On Average)
10:00
Aaron Jack
Рет қаралды 1,6 МЛН
COMO TRATAR EXCEÇÕES NO JAVA SPRING
18:32
Fernanda Kipper | Dev
Рет қаралды 13 М.
RESOLVENDO DESAFIO BACKEND PLENO com SPRING + AWS + MONGO | PARTE 1
1:30:39
Fernanda Kipper | Dev
Рет қаралды 86 М.
Coding Interviews Be Like
5:31
Nicholas T.
Рет қаралды 6 МЛН
Como ensinar linguagem de programação para uma criança
5:29
O Baricentro da Mente
Рет қаралды 191 М.
Resolvendo desafio de entrevista técnica de programação!
19:05
Giuliana Bezerra
Рет қаралды 3,3 М.
Как распознать поддельный iPhone
0:44
PEREKUPILO
Рет қаралды 1,9 МЛН
iPhone socket cleaning #Fixit
0:30
Tamar DB (mt)
Рет қаралды 13 МЛН
Todos os modelos de smartphone
0:20
Spider Slack
Рет қаралды 38 МЛН
Cheapest gaming phone? 🤭 #miniphone #smartphone #iphone #fy
0:19
Pockify™
Рет қаралды 2,9 МЛН