2010-10-19 6 views
4

Je travaille sur le développement de pilotes RTOS et Linux depuis un certain temps. Maintenant, j'interviewe dans des sociétés de semi-conducteurs et je ne réponds pas aux questions sur les algorithmes sur les chaînes et la complexité du temps et de l'espace. Je n'ai pas étudié les maths et les algorithmes discrets pendant mes années de formation en électronique.Principes de base et maths requis pour les algorithmes

Comment puis-je surmonter cet écart?

+1

Il existe une excellente définition introductive pour les complexités de temps dans SO seulement http://stackoverflow.com/questions/487258/plain-english-explanation-of-big-o et http://stackoverflow.com/questions/107165/grand-o-pour-huit-ans – Rozuur

Répondre

5

Commencez par quelque chose de simple comme: Algorithms in a Nutshell (bon point de départ pour une entrevue comme des questions)

alt text

Ou Algorithms For Interviews Lorsque vous sentez que vous connaissez le livre ci-dessus, alors vous pouvez penser à plonger dans l'introduction aux algorithmes.

+0

Algorithmes pour les interviews n'est pas un bon moyen de commencer avec les algorithmes et la complexité. C'est écrit pour les gens qui ont eu quelques conférences sur ce matériel, qui ont travaillé sur les problèmes, et l'ont oublié il y a un certain temps. –

+1

Comme l'un des auteurs de "Algorithms of For Interviews", je suis d'accord avec Paul que ce livre n'est pas un substitut pour un manuel. Mais je suis aussi partiellement en désaccord. jammulak a déjà travaillé sur des projets de logiciels complexes et AFI pourrait être une façon amusante pour lui de lui enseigner le matériel et d'obtenir une préparation rapide aux entrevues. Bien sûr, il peut avoir besoin d'un moyen de regarder les choses sur le net ou dans un manuel quand il est coincé. –

3

Vous devez passer en revue la plupart du matériel de cours pour une classe Structures de données et algorithmes. Afin de répondre à ces types de questions d'entrevue, vous n'avez généralement pas besoin du matériel couvert dans Mathématiques discrètes.

Si vous voulez faire le long chemin (et comprendre le sujet), je vous recommande de travailler sur le matériel de classe et d'écouter les conférences. Depuis UC Berkeley messages certains de leurs cours en ligne, vous pouvez regarder une telle classe (avec un excellent instructeur) ici:

http://webcast.berkeley.edu/course_details.php?seriesid=1906978343

accorder une attention particulière aux conférences sur la notation Big O, et le tri et la recherche algorithmes. Ceux-ci ont tendance à être les bits que les gens demandent pour les entretiens d'embauche.

Si vous ne pouvez pas être pris la peine de passer réellement les 30 heures à regarder les conférences et beaucoup plus de travail à travers les problèmes, vous devriez au moins consulter le livre qui utilise cours:

Goodrich and Tamassia's Data Structures and Algorithms in Java

1

Je voudrais vous suggérons Introduction to Algorithms (par CLRS) et Algorithm design manual pour les algorithmes et la complexité (par steven skienna) pour comprendre les algorithmes et la complexité.Autre, il y a quelques bons tutoriels sur les algorithmes et la complexité au codeur supérieur (site: topcoder .com/tc), vous pouvez les vérifier aussi.

Questions connexes