Criteria and Topics for the Doctoral Studies Admission, Computer Science

approved by the Faculty Council on 06.02.2018

The admission exam consists of

  1. A written exam based on the topics below.
  2. An interview in which the scientific interests of the candidate, as well as the research topic proposed for the PhD thesis are analyzed.

The candidates will be admitted, based on their options and admission scores, on the available state budgeted places (full-time and part-time). The admission score is computed as follows:

  • 40% the grade for the written exam;
  • 40% the grade for the interview;
  • 20% the average grade of promoting the years of study at the Master level/Advanced Studies or the average grade of promoting the years of study at the Bachelor level for the graduates of the long-time higher education studies from the period prior to the application of the three Bologna cycles (which do not have a Master diploma). In the case of equal admission scores, the grade from the written exam will be considered for ranking.

Topics for the written exam

  1. Programming fundamentals
    1. Subalgorithms: specification, testing.
    2. Classes of algorithms: searching, sorting, merging.
    3. Methods for algorithms design: top-down, stepwise refinement.
    4. Subprograms, calls and parameters passing (by value and reference).
    5. Programming techniques: Backtracking, Divide et impera, Greedy.
    6. Modular programming: modules, interface; implementation in C/C++, Java, Python.
  2. Object oriented programming
    1. Classes, objects.
    2. Inheritance, polymorphism.
    3. Interface based programming.
  3. Data structures
    1. Abstract data types (ADT).
    2. ADTs: Set, Bag, List, Stack, Queue, Map.
    3. Specification of an ADT.
    4. Implementations for an ADT using: vectors, linked lists, binary trees.


  1. M. Frenţiu, B. Pârv, Elaborarea programelor. Metode şi tehnici moderne, ProMedia, Cluj-Napoca, 1994
  2. M. Frenţiu, H.F. Pop, G. Şerban, Programming fundamentals, Cluj University Press, 2006
  3. T. Cormen, C. Leiserson, R. Rivest: Introducere în algoritmi. Cluj-Napoca: Editura Computer Libris Agora, 2000
  4. B. Eckel, Thinking in C++, vol I şi II, http://www.mindview.net
  5. B. Eckel, Thinking in Javahttp://www.mindview.net
  6. M.A. Ellis, B. Stroustrup, The annotated C++ reference manual, Addison-Wesley, 1994
  7. The Python language reference. http://docs.python.org/py3k/reference/index.html
  8. R.S. Pressman, Software engineering. A practitioner’s approach, 6th ed., McGraw-Hill, 2005