Gute 15-Minuten-Java-Frage, um den letzten Hochschulabsolventen zu fragen [geschlossen]

7

Wenn man Hochschulstudenten / Praktikanten oder jüngere Absolventen interviewt, hilft es, eine Java-Programmierfrage zu haben, die sie in 15 Minuten auf einem Whiteboard machen können. Hat jemand Beispiele für gute Fragen wie diese? Eine C ++ - Frage, die ich einmal in einem Interview gestellt habe, war, eine Zeichenkette in Integer-Funktion zu schreiben, die auf der Ebene der Frage steht, nach der ich nach Beispielen suche.

    
Jim 10.09.2008, 11:41
quelle

8 Antworten

6

Einige Sachen, die auf SO aufgetaucht sind:

  • IsPalindrome (String s)
  • ReverseWordsInString (String s): "Ich kenne Java" - & gt; "Java kenne ich"

Andere Dinge, die einem einfallen:

  • multipliziere einen Vektor mit einer Matrix (kann dies OO-Stil sein?)
  • echo (ja, ein einfacher Klon des Unix-Tools)
  • cat (15 min sollte genug sein, sollte die ahnungslosen ausmerzen)
  • ein einfacher Container für int s. Wie ArrayList . Bonusfrage : Generic?
Daren Thomas 10.09.2008, 11:55
quelle
9

Gibt es einen Grund, warum es auf einem Whiteboard sein muss? Persönlich würde ich sie lieber vor eine Tastatur setzen und sie Code schreiben lassen. Unser Test war ein einfacher 100 (IIRC) Zeilen-Swing-Texteditor. Wir haben es dann ein paar einfache Wege gebrochen, einige machen den Code nicht kompilieren und einige ein wenig subtiler, und gaben den Kandidaten eine halbe Stunde und eine Liste von Problemen zu beheben.

Auch wenn Sie sie nicht in die Hand nehmen können, stellen Sie sicher, dass Sie ihnen einige technische Fragen stellen. In einer anderen Runde von Interviews gab es eine überraschende Anzahl von kürzlich Absolventen, die nur Schlagwort-speiende IDE-Jockeys waren, so dass sie OKish winkend mit ihren Händen vor einem Whiteboard über Enterprise sprechen konnten - dies und SOA - das, aber wenn gegeben Eine simple Java-Grundlagen-Multiple-Choice-Prüfung mit der Frage, was final und protected bedeutet, war erschreckend schlimm.

    
Dave Webb 10.09.2008 11:53
quelle
7

Ich habe immer gedacht, dass algorithmische Fragen sprachunabhängig sein sollten. Wenn Sie das Java-Niveau eines Studenten testen möchten, konzentrieren Sie sich auf die Sprache: ihre Schlüsselwörter (von gewöhnlichen wie statische zu exotischen, wie flüchtig), Generika, Überladen, Boxen / Unboxing von Variablen, Standard-Bibliotheken.

    
Nicolas 10.09.2008 12:09
quelle
6
  1. Schreiben Sie eine Funktion, um Variablenwerte mit Hilfe von Zeigern zu vertauschen (Wirklich schlechte werden darauf fallen)
  2. Schreiben Sie ein Programm, um den Abstand zwischen zwei Punkten in der XY-Ebene zu finden. Nutzen Sie eine Klasse zum Speichern der Punkte.
  3. Zeigen Sie die Verwendung von Polymorphismus in Java mit einem einfachen Programm.
  4. Schreiben Sie ein Programm, um die ersten n Primzahlen zu drucken.
  5. Schreiben Sie ein Programm, um eine Zeichenfolge in einer Datei durch eine andere zu ersetzen.
Niyaz 10.09.2008 11:48
quelle
1

Wenn Sie nicht wissen, welche Fragen Sie stellen sollen, sind Sie möglicherweise nicht in der Lage, sie in Java zu interviewen. Bei allem Respekt, ich hasse es, wenn Leute mir Fragen in Interviews stellen, für die sie selbst keine Antworten wissen. Antworten auf die meisten Fragen finden Sie online, indem Sie in wenigen Sekunden googeln. Wenn jemand Erfahrung in Java hat, wird er auf jeden Fall die abstrakte Klasse, Schnittstelle usw. kennen, da sie die Kernbausteine ​​sind. Wenn er / sie kein 'volatiles' Keyword kennt - große Sache.

    
Swetha 20.08.2009 23:29
quelle
0

Ich stimme Nicolas in Bezug auf die Trennung der algorithmischen Fragen von den eigentlichen Sprachfragen.

Eine Sache, die Sie vielleicht in Erwägung ziehen sollten, ist, ihnen ein paar einfache Algorithmusfragen zu geben, mit denen sie den Pseudo-Code auf der Tafel aufschreiben können (zB "Erklären Sie mir die Bubble sort und zeige mir den Pseudocode dafür."

Sobald Sie ihr algorithmisches Wissen demonstriert haben, können Sie zu den Java-Fragen übergehen. Da einige Leute besser vor einem Computer als vor dem Whiteboard arbeiten, würde ich ihnen etwas Einfaches geben, aber ihre Java-Kenntnisse nutzen, die sie in etwa 30 Minuten implementieren können, wenn sie dieselbe IDE verwenden, mit der Sie arbeiten das Unternehmen. Auf diese Weise können Sie, wenn Sie behaupten, die IDE zu kennen, auch eine Vorstellung davon bekommen, wie gut sie es kennen.

    
rjzii 10.09.2008 12:36
quelle
0
  1. Schreiben Sie eine Funktion, die zwei sortierte Listen zusammenfasst - Anhalten bei Limit. Suchen Sie nach den einfachen Optimierungen und korrigieren Sie die Grenzüberprüfungen / Unterlistenaufrufe. Sagen Sie ihnen T implementiert compareTo.

    öffentliche Liste & lt; T & gt; Zusammenführen (Liste & lt; T & gt; eins, Liste & lt; T & gt; zwei, int-Grenze)

  2. Schreiben Sie eine Funktion, die true zurückgibt, wenn zwei Ganzzahlen im Array die Summe ergeben. Haben sie versucht, besser als n im Quadrat mit einer Art von Satz oder Datenstruktur zu tun.

    public boolean containsSum (int [] num, int sum)

wsorenson 24.10.2008 02:22
quelle
0

Ich würde vermeiden, ihnen Fragen zu stellen, die in ihren Anfängerklassen abgedeckt wären. Ich wäre neugierig auf ihre Fähigkeit, alles anzuwenden, was sie gelernt haben, um komplexe technische Probleme zu lösen. Wenn Ihr Unternehmen einen bestimmten Bedarf an einer IT-Lösung hat, können Sie dies als Ausgangspunkt verwenden. Sie könnten den Kandidaten fragen, welche Technologien sie verwenden würden und welche Vor- und Nachteile diese Technologien gegenüber alternativen Technologien haben. Im Laufe der Diskussion können Sie ein Gefühl für ihre technischen Fähigkeiten, Problemlösungsfähigkeiten, zwischenmenschlichen Fähigkeiten usw. bekommen. Ich denke, es ist wichtig, sie zu vermeiden, selbst in schwierigen Momenten. Dies ist wichtig, um die BSer auszublenden.

    
rich 24.10.2008 02:45
quelle

Tags und Links