Test your basic knowledge |

Data Structures

Subject : it-skills
Instructions:
  • Answer 50 questions in 15 minutes.
  • If you are not ready to take this test, you can study here.
  • Match each statement with the correct term.
  • Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.

This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. An abstracted function that describes the amount of computer time or memory space required by an algorithm - as a function of problem size. for problems larger than a certain size - the actual time or space required will be less than the Big O multip






2. In a tree search - to move back from the node currently being examined to its parent






3. A queue implemented within an array - where the first elements of the array logically follows the last elements






4. Implementation of complex ADTs. Physical representation of how data is stored - organized - and manipulated






5. binary tree that is ordered such that each node has contents - and all of its left descendants are less than the contents - an all of its right descendants are greater than the contents






6. A description of the kinds of objects that exist in a computer program - e.g a Java class hierarchy






7. The amount of space on the runtime stack required for execution of a program






8. Composed of multiple sequential elements stored in contiguous bytes of memory






9. An extra record at the start or end of a data structure such as a linked list - to simplify processing






10. The area of program text over which a variable can be referenced






11. A search in which children of a node are considered before siblings are considered






12. To answer the question - "If the algorithm is run several times - what is the average time per run - given the worst possible sequence of runs?"






13. Last in first out: describes the order of a stack






14. An ordering that can be guaranteed to terminate - e.g. starting at a positive integer and counting down






15. An item (or description of items) being sough in a search






16. A stack containing a stack frame of variable value for each active invocation of procedure






17. A problem whose solution requires a linear amount of time or space if the problem is size n






18. A classification of objects into a tree structure that groups related objects






19. A contiguous block of memory containing elements of the same type - accessed by numeric index






20. Use of a function or method without knowing how it's accomplished






21. A pointer to data






22. A runtime error that occurs when an operation such as method call is attempted on a null pointer






23. Any container with linear ordering






24. A case where tow data structures share some elements






25. To convert from a pointer to the data that is pointed to






26. In a tree - a node that points to a given node






27. Values are in the most basic form and cannot be decomposed into smaller parts






28. A description of the state of a process such as a board game






29. A type in which variables of that type are pointers to objects. in the code integer i = 3 - the variable i holds a pointer to the integer object that contains the value. in in j = 3 - the variable j contains the value. in java - only reference types






30. The process of collecting garbage for recycling






31. All nodes below a give node in a tree






32. A pointer to the next element in a linked list






33. Describes a data structure or device in which all accesses have the same cost - O(1)






34. A section of the runtime stack holding the values of all variables for one invocation






35. 1. In lisp - the function that constructs a pair of points - or basic elements of list structure. 2. To make a cons data structure 2. a cons data structure






36. A problem that is so hard that it cannot be solved unless the problem is small






37. Given two sets - the intersection is the set of elements that are members of both sets






38. An elements of a linked list - tree - or graph - often represented by a data structure






39. To modify the order of a set of elements so that a desired ordering holds between them - e.g. alphabetic order






40. A function whose value either does not involve a recursive call - or is exactly the value of a recursive call






41. In object oriented programming - a description of a set of similar objects






42. o(n^2) - a problem whose solution requires a quadratic amount of time or space if the problem is of size n






43. A tree node containing a contents value but with no children






44. In a tree - the union of a node's parent and the parent's ancestors






45. In a tree - a node pointed to by a parent node






46. A list of pairs - where each pair has a key and a value associated with the key






47. An order of processing a tree in which the parent node is processed after its children






48. A number that is defined as an object so that it has a runtime type and methods that can be used - e.g. Integer in Java






49. A linked list in which each elements has both forward and backward pointers






50. A problem-solving strategy in which a problem is broken down into sub-problems - until simple subproblems are reached