Se préparer aux défis du code [fermé]


15

Il y a quelques jours à peine, j'ai découvert Codility et j'ai essayé leurs défis. Et je dois dire. Je me suis fait remettre mon derrière sur un plateau. Je ne sais pas quel était le problème, mais je vais lécher mes blessures et attendre que la solution sorte et la comparer avec la mienne. En attendant, je veux me préparer pour le prochain défi alors je lis leurs précédents articles de blog et je vois comment résoudre leurs problèmes précédents. Il y a beaucoup de nouvelles choses dont je n'ai pas entendu parler (arbres cartésiens, divers algorithmes de tri, etc.)

Alors, comment peut-on se préparer à de tels défis (en particulier le temps O (x) et la complexité de l'espace). Que dois-je lire pour me préparer à une telle tâche?


J'étudie haskell ces derniers temps en partie pour forcer mon cerveau à convulser (il va forcer cela) spécifiquement aider à devenir plus agile dans la pensée des solutions. Cela dit, je lis également le manuel de conception d'algorithmes (un pdf en ligne gratuit existe) et une copie de vente de garage de The Art of Computer Programming Vol 1 Fundamental Algorithms de Knuth (qui est également une source sérieuse de douleurs cérébrales) dans le même but. .
Jimmy Hoffa

Réponses:


3

comment se prépare-t-on à de tels défis (en particulier le temps O (x) et la complexité de l'espace). Que dois-je lire pour me préparer à une telle tâche?

En se préparant bien sûr! C'est une question de pratique et de mise au point sur des domaines qui vous ont paru courts. Merci mon Dieu, de très bonnes ressources à couvrir une fois que les lacunes d'information sont sur Internet et que Google est votre ami.

En ce qui concerne les références, je conseillerais à plusieurs sites Web qui ont des questions de défi de programmeur. À partir de ces types de questions, vous pouvez déterminer vos lacunes et étudier pour elles.

Ressources à rechercher:


7

La seule chose que vous pouvez faire pour vous préparer à ce genre de tests est la pratique. Pratiquez beaucoup . Il y a beaucoup de bonnes ressources pour l'aide des codeurs, tels que topcoder, codegolf, geeks for geeks, Programming Praxies, CodeKata, Project Euler etc.

Si vous rencontrez des problèmes avec les structures de données, il serait préférable de rafraîchir vos concepts d'algorithme et de structure de données. Le meilleur endroit pour cela est wikipedia, mais vous pouvez également rechercher des cours d'algo data sur nptel, coursera, etc ...


Je cherchais plus de ressources comme des livres, mais certains de vos liens ont été nouveaux et informatifs.
Daniel Fath

1
@DanielFath: Lire à ce sujet aide, mais la résolution de problèmes est un art qui doit être pratiqué si vous voulez devenir bon dans ce domaine. Dans le monde de l'écriture de logiciels, il y a un nombre étonnamment élevé de problèmes que vous verrez à plusieurs reprises. L'expérience de les avoir résolus auparavant vous donne la possibilité de repérer de nouvelles variations et d'appliquer rapidement une bonne solution.
Blrfl

Je suis d'accord avec la pratique beaucoup partie, j'exprime simplement le désir de ressources plus concrètes , afin d'examiner la question résolue. J'ai voté pour les réponses (diable je les ai toutes votées).
Daniel Fath

4

Le blog semi-officiel sur le recrutement Google recommande ce livre: The Algorithm Design Manual .

Il est très complet et bien écrit, avec une partie `` référence rapide '' qui peut vous aider beaucoup dans votre situation, une fois que vous êtes suffisamment familiarisé avec les algorithmes et les structures de données courants.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.