Κορυφαίες 18 ερωτήσεις και απαντήσεις συνέντευξης LISP (2025)

Ακολουθούν ερωτήσεις και απαντήσεις για συνεντεύξεις προγραμματισμού Lisp για νεοφώτιστους καθώς και έμπειρους υποψήφιους προγραμματιστές Lisp για να πάρουν τη δουλειά των ονείρων τους.


1) Εξηγήστε τι είναι το LISP; Δώστε ένα παράδειγμα ορισμένων από τις δημοφιλείς εφαρμογές που είναι ενσωματωμένες στο LISP;

Το LISP σημαίνει Επεξεργασία λίστας, είναι επίσης μια γλώσσα προγραμματισμού υψηλού επιπέδου που βασίζεται σε επίσημο λειτουργικό λογισμό. Αυτή η γλώσσα χρησιμοποιείται για εύκολο χειρισμό συμβολοσειρών δεδομένων. Χρησιμοποιείται για Τεχνητή νοημοσύνη. Μερικές από τις δημοφιλείς εφαρμογές που είναι ενσωματωμένες στο LISP είναι

  • Κατάστημα Yahoo
  • AutoCad
  • G2
  • Emacs
  • Ιγκόρ Χαράκτης

Δωρεάν λήψη PDF: Ερωτήσεις και απαντήσεις στη συνέντευξη Lisp


2) Γιατί το LISP χρησιμοποιείται για την Τεχνητή Νοημοσύνη;

Το LISP χρησιμοποιείται για την Τεχνητή Νοημοσύνη για τους ακόλουθους λόγους

  • Υποστηρίζει τον συμβολικό προγραμματισμό και η παλιά τεχνητή νοημοσύνη βασιζόταν σε σύμβολα
  • Το LISP είναι ισχυρό. Η διάκριση κώδικα ή δεδομένων είναι πιο αδύναμη, επομένως είναι πιο επεκτάσιμη από άλλες γλώσσες προγραμματισμού που την κάνουν να μοιάζει σαν μια συγκεκριμένη γλώσσα τομέα
  • Είναι ένα εξαιρετικό εργαλείο δημιουργίας πρωτοτύπων και καλό στην αντιμετώπιση προβλημάτων

3) Δείξτε με ένα παράδειγμα πώς μπορείτε να κωδικοποιήσετε στο LISP;

Σχεδόν τα πάντα στο LISP είναι συνάρτηση, ακόμα και οι μαθηματικοί τελεστές. Για παράδειγμα, (+ (* 5 3) 1 ) Η έξοδος θα είναι 16, οι συναρτήσεις στο LISP ανοίγουν και κλείνουν με παρένθεση.


4) Ποια είναι η δομή προγραμματισμού για το LISP;

Η δομή προγραμματισμού LISP αποτελείται από συμβολικές εκφράσεις ή s-εκφράσεις. Η έκφραση s αποτελείται από τρία έγκυρα αντικείμενα

  • Ατομο: Είναι ένας αριθμός ή μια συμβολοσειρά συνεχόμενων χαρακτήρων
  • Κονίστρα: Μια λίστα είναι μια ακολουθία ατόμων ή άλλων λιστών που περικλείονται σε παρένθεση
  • Σύμβολο: Μια ομάδα χαρακτήρων που περικλείονται σε διπλά εισαγωγικά αναφέρεται ως String. Τα προγράμματα LISP μπορούν να εκτελεστούν είτε σε διερμηνέα είτε ως μεταγλωττισμένος κώδικας

5) Πώς κατηγοριοποιούνται οι τύποι δεδομένων στο LISP;

Στο LISP, οι τύποι δεδομένων κατηγοριοποιούνται ως

  • Κλιμακωτοί τύποι: Τύποι αριθμών, χαρακτήρες, σύμβολα κ.λπ.
  • Δομή δεδομένων: λίστα, διανύσματα, διανύσματα bit και συμβολοσειρές
Ερωτήσεις συνέντευξης LISP
Ερωτήσεις συνέντευξης LISP

6) Αναφέρετε πόσους τύπους μεταβλητών είναι διαθέσιμοι το LISP; Εξηγήστε ποιες είναι οι μεταβλητές που είναι δεσμευμένες και στις οποίες έχουν εκχωρηθεί τιμές;

Ο αριθμός των διαθέσιμων μεταβλητών στο LISP είναι δύο, η μία είναι λεξική μεταβλητή και η άλλη ειδική μεταβλητή. Η παράμετρος των διαδικασιών είναι μεταβλητή που είναι δεσμευμένες και έχουν τιμές που τους έχουν εκχωρηθεί.


7) Εξηγήστε τι είναι οι Τοπικές Μεταβλητές;

Με μια δεδομένη διαδικασία ορίζονται τοπικές μεταβλητές. Οι παράμετροι που ονομάζονται ως ορίσματα σε μια συνάρτηση αναφέρονται επίσης ως τοπικές μεταβλητές. Είναι προσβάσιμα μόνο εντός της αντίστοιχης λειτουργίας.


8) Εξηγήστε τι είναι οι σταθερές LISP;

Στο LISP, οι σταθερές κατά την εκτέλεση είναι μεταβλητές που δεν αλλάζουν ποτέ τις τιμές τους. Χρησιμοποιώντας το κατασκεύασμα defconstant δηλώνονται σταθερές.


9) Είναι δυνατή η κλήση συναρτήσεων LISP από άλλες γλώσσες;

Το LISP παρέχει μια συνάρτηση επανάκλησης, όταν ο προγραμματιστής συσχετίζει ένα όνομα συνάρτησης ξένης γλώσσας με μια συνάρτηση LISP, συνδέεται με αυτές τις λειτουργίες επανάκλησης. Με ξένη συνάρτηση, ο προγραμματιστής πρέπει να παρέχει τους τύπους δεδομένων και το όρισμα του αποτελέσματος, έτσι ώστε το LISP να μπορεί να πραγματοποιεί μετατροπές στη διεπαφή.

Ερωτήσεις συνέντευξης προγραμματισμού Lisp
Ερωτήσεις συνέντευξης προγραμματισμού Lisp

10) Αναφέρετε ποιες είναι οι τρεις λειτουργίες που απαιτούνται από το LISP;

Για τον καθορισμό συναρτήσεων, χρησιμοποιείται η μακροεντολή με το όνομα defun, χρειάζεται τρία ορίσματα

  • Όνομα της συνάρτησης
  • Παράμετροι της συνάρτησης
  • Σώμα της λειτουργίας

11) Εξηγήστε τι είναι το κατηγόρημα στο LISP;

Τα κατηγορήματα είναι ένας τύπος συναρτήσεων που δοκιμάζουν τα ορίσματά τους για συγκεκριμένες συνθήκες και επιστρέφουν μηδενική τιμή εάν η συνθήκη είναι false και εάν η συνθήκη είναι αληθής ανακτά κάποια τιμή που δεν είναι μηδενική.


12) Εξηγήστε ποια είναι η σημασία του πίνακα κατακερματισμού στο LISP;

Η δομή δεδομένων πίνακα κατακερματισμού υποδηλώνει μια συλλογή ζευγών κλειδιών και τιμών τα οποία είναι διατεταγμένα με βάση τον κωδικό κατακερματισμού του κλειδιού. Κάθε στοιχείο στον πίνακα κατακερματισμού έχει ζεύγος κλειδιού/τιμής και χρησιμοποιείται για πρόσβαση στα στοιχεία της συλλογής. Όταν θέλετε να αποκτήσετε πρόσβαση σε στοιχεία χρησιμοποιώντας ένα κλειδί, χρησιμοποιείται ένας πίνακας κατακερματισμού.


13) Εξηγήστε τα LISP-Vectors;

Τα διανύσματα είναι μονοδιάστατοι πίνακες, επομένως, ένας υποτύπος του παράταξη. Τα διανύσματα και οι λίστες μαζί ονομάζονται ακολουθίες. Το LISP έχει σταθερού μήκους μεταβλητά/ απλά διανύσματα καθώς και διανύσματα μεταβλητού μήκους που δημιουργούνται με τις λέξεις-κλειδιά: ρυθμιζόμενο και δείκτης πλήρωσης.


14) Εξηγήστε τι είναι η λίστα ακινήτων στο LISP;

Στο LISP, ένα σύμβολο αντιπροσωπεύει ένα αντικείμενο δεδομένων. Αποτελείται από συστατικό που ονομάζεται λίστα ιδιοτήτων ή plist. Το LISP επιτρέπει την εκχώρηση ιδιοτήτων σε σύμβολα. Μια λίστα ιδιοτήτων εκτελείται ως λίστα μέσα σε ζυγό αριθμό στοιχείων.


15) Αναφέρετε ποια είναι τα δύο προκαθορισμένα πακέτα που χρησιμοποιούνται στο LISP;

Τα δύο προκαθορισμένα πακέτα στο LISP είναι

  • Common Lisp: Περιέχει σύμβολα για όλες τις συναρτήσεις και τις μεταβλητές που ορίζονται
  • Κοινός χρήστης Lisp: Χρησιμοποιεί το πακέτο common-lisp και όλα τα άλλα πακέτα με εργαλεία επεξεργασίας και εντοπισμού σφαλμάτων

16) Εξηγήστε τι είναι η υποδοχή και ποιες είναι οι πιο συχνά χρησιμοποιούμενες επιλογές υποδοχής;

Οι κουλοχέρηδες δεν είναι παρά μεταβλητές που αποθηκεύουν δεδομένα ή πεδία. Μια περιγραφή υποδοχής έχει τη μορφή, όπου κάθε επιλογή είναι μια λέξη-κλειδί ακολουθούμενη από όνομα, έκφραση και άλλες επιλογές. Οι πιο συχνά χρησιμοποιούμενες επιλογές υποδοχής είναι:

  • :accessor function-name
  • :initform έκφραση
  • σύμβολο :initarg

17) Εξηγήστε τι είναι το CLOS στο LISP; Ποιοι είναι οι στόχοι του κοινού συστήματος αντικειμένων lisp;

Για τη σύνταξη αντικειμενοστρεφών προγραμμάτων, το κοινό LISP περιλαμβάνει ένα σύνολο τελεστών, συλλογικά ονομάζονται CLOS ή Common Lisp Object System. Ο κοινός στόχος του LISP είναι να

  • Για να ταιριάζει με το κοινό lisp με φυσικό τρόπο, όσον αφορά τη λειτουργική σημείωση και την επέκταση του κοινού τύπου LISP
  • Για να παρέχει μια ομαλή πορεία ανάπτυξης και εύκολες μεταβάσεις για τους τρέχοντες χρήστες γεύσεων και κοινών βρόχων
  • Να παρέχει μια πολυεπίπεδη προσέγγιση
  • Να παρέχει και τις δύο πλατφόρμες για την αποτελεσματική παράδοση εφαρμογών και γλώσσα για ισχυρό περιβάλλον προγραμματισμού

18) Εξηγήστε σε τι χρησιμοποιείται το setq στο LISP;

Το setq χρησιμοποιείται για τον ορισμό μεταβλητών στο LISP

Αυτές οι ερωτήσεις συνέντευξης θα βοηθήσουν επίσης στο viva (προφορικά) σας

Κοινοποίηση

3 Σχόλια

  1. Avatar Jayalatha λέει:

    Λατρεύω το LISP, ειδικά το AutoLISP.
    Ανυπομονώ να συνεργαστώ με το LISP

  2. Κάρστεν Γιόχανσον λέει:

    Πέρασα, εκτός από μια ερώτηση μιας και γίνεται λάθος. Η ερώτηση 10 ζητά 3 συναρτήσεις που απαιτούνται από τον Lisp, αλλά αυτό που πραγματικά θέλετε είναι τα 3 στοιχεία (όχι ορίσματα) που χρειάζονται για να ορίσετε μια συνάρτηση. Τότε η απάντηση που δίνεται είναι σωστή.

    Μου άρεσαν οι ερωτήσεις, έτσι κι αλλιώς. Νομίζω ότι προσλαμβάνεσαι αυτόματα όταν κάνουν την ερώτηση 1 και τα μάτια σου φωτίζονται αμέσως και πρέπει να σου ζητήσουν να σταματήσεις να απαντάς,

Αφήστε μια απάντηση

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται *