No espírito do @hugaomarques que ta no ritmo do leetcode, resolvi fazer uma thread com minhas dicas. Já estive em várias Big Tech/FAANG então alguma coisa eu fiz certo em relação a isso, então segue o fio pro meu approach “infalível” 😅
🧵
#bolhadev cc @sseraphini
Primeiro de tudo, vejo muita gente achando que leetcode “não é pra eles”, pelo menos no mercado americano, acabam deixando dinheiro na mesa porque em geral as companhias que pedem Leetcode são as que mais pagam. Então deixa eu te contar um segredo…
Leetcode é absolutamente PURO grind, eu falo isso pq eu era horrível, grindei a parada igual um camelo, e depois de um tempo fica muito fácil. Leetcode não é inteligência, é pattern matching, os patterns se repetem e chega em um ponto que você sabe tantos algoritmos e “truques”
diferentes. Por mais que seja um problema “novo”, ele acaba se encaixando em algo q vc ja viu. Dito isso, aqui vai meu workflow:

1) Se puder pague o premium
2) Selecione um tópico (i.e: Hashmap)
3) Sorteia pela frequencia
4) Sorteia de novo por acceptance rate
5) Faça todas as Easy de frequencia VERDES e AMARELAS em ordem decrescente de acceptance rate
6) Mova para o próximo tópico
7) Depois de todos os tópicos, volte para o passo 5 e faça todas as médias de frequencia verde e amarela.
Sequencia de tópicos que recomendo:

1) Hashmap
2)Sorting
3) Binary Search
4)Recursion
5)Linked List
6) Trees
7)BFS
8) DFS
9)Graphs
10) Backtracking
11)Heaps/Priority Queue
12) Sliding Window
13)Stack
14)Monotonic Stack
15)Queues
16)Arrays
17)Strings
18) Dynamic Programming
Arrays e Strings lá no final, pq a maioria dos problemas não é “só” array e strings, vc precisa de outros conhecimentos. E DP é o mais difícil e nem toda companhia pede, entao deixe pro final. Da pra alterar essa ordem, mas algumas tem dependencia aí.
Daí na hora de fazer vc faz o seguinte, toda questao q vc for fazer, vc marca 45 minutos, quebra a cabeça, passou 45 minutos e nao conseguiu, vc olha a resposta. Se entendeu como faz, vc marca numa planilha de excel como amarelo. Amarelo quer dizer que vc entendeu, fez, mas…
teve que olhar a resposta. Se vc nao entendeu nem olhando a resposta, marca como vermelho, e vai pra proxima. Pelos menos 5 dias depois de vc ter feito uma amarela, vc refaz ela, pra ver se vc realmente entendeu e nao “decorou”, se vc realmente conseguiu fazer, tira do seu excel
As vermelhas vc marca uma hora pra tentar entender depois, ver vídeos de youtube de resolução, tentar outros caminhos. O importante é vc nao encalhar em um problema, e seguir em diante. No final é um jogo de probabilidade… vc ta tentando cobrir o maior terreno possível.
Como vc sabe que vc ta bom pra fazer a entrevista? Eu sempre pegava um dia pra ser meu “dia de teste”. Eu pego 5 perguntas NOVAS no mínimo de dificuldade MÉDIA, aleatórias, da companhia que eu vou fazer. Se eu conseguir resolver as 5 em menos de 20 minutos cada…
é porque eu estou pronto.

Bom, e as Hard? Aconselho fazer as Hards que são de frequencia alta e/ou acceptance rate alto. Hard muito obscura é muito difícil cair. Mas já me deram “Hard”, que nao era taaao Hard assim. É aquelas Hard que dava pra ser “Média”.
É isso, se tiverem alguma dúvida pode perguntar. É chato a beça fazer, mas infelizmente, esse é o sistema que muitas empresas adotaram… apesar de não ser muito fã, só me resta jogar o jogo, já que eu não faço as regras 🤷🏻‍♂️. Espero que possa ajudar alguém…
Ah, esqueci de tres tópicos:

Two pointers, Prefix sum e Greedy. Pode botar eles em qualquer lugar depois de LinkedList, mas talvez Prefix sum e Greedy eu colocaria mais pro final da lista…
Só um disclaimer, esse plano de estudo é pra um nível de exigência BEM alto, nível FAANG/Quant trading, obviamente vc precisa de bem menos que isso dependendo da companhia que vc quer fazer…
Outra coisa aqui é que é sempre um jogo de probabilidades, vc pode fazer 10% disso e passar, e fazer 100% e não passar. Quanto mais vc treina vc só aumenta suas chances, mas nada é garantido…

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Gustavo Nunes 🇧🇷 ➡️ 🇺🇸

Gustavo Nunes 🇧🇷 ➡️ 🇺🇸 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @GubnunBR

Feb 26
🚨PARE DE OVER ENGINEERING 🚨

Leia esse post e reflita. A quantidade de código obfuscado que eu vejo é grande, e em geral quanto menos senior a pessoa, mais obfusca o código, abusando de conceitos tanto OOP, quanto funcional. Esse fio é sobre isso 🧵
#bolhadev cc: @sseraphini
Já entrou numa base de código que a sua sensação é que vc navega, navega e só tem “osso” ali, não tem uma “carninha” onde está o verdadeiro business logic da parada? Vc ta procurando por exemplo quem lê o arquivo, onde ta a lógica que faz aquilo, mas vc só encontra abstracão..
São arquivos e arquivos tentando achar de onde vem, e vc acha a parada láá escondida em algum lugar, essa eh sua “carne”, o resto tooodo que vc navegou era “só osso”, abstração atrás de abstração pra fazer algo simples.
Read 16 tweets
Feb 19
Programar NÃO É DIFÍCIL, o problema que vejo das pessoas que desistem é que existe uma inércia inicial muito grande até você chegar a um ponto de inflexão que você se vê realmente entendendo e capaz de fazer coisas úteis. Essa thread é sobre isso 🧵:

#bolhadev cc:@sseraphini
O mito do “gênio” da programação acho que prejudica muito quem quer aprender a programar. As pessoas acham que aquilo é “rocket science” ou precisa de algum tipo de “aptidão” pra coisa. Eu já mentorei MUITAS pessoas a começar na carreira de programação…
A única correlação alta que vejo entre as que conseguem e as que não conseguem é: tem gente que desiste. Desiste antes de chegar no ponto de inflexão na curva do primeiro tweet. E é verdade, existe uma inércia inicial MUITO grande em programação…
Read 6 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(