Explain Vector, Linked List, and Polymorphism
Company: Intercontinental Exchange
Role: Software Engineer
Category: Software Engineering Fundamentals
Difficulty: medium
Interview Round: Technical Screen
Quick Answer: This question evaluates competency in C++ data structures and object-oriented polymorphism, testing understanding of dynamic array versus linked-list memory layouts, random access and insertion/deletion performance, cache locality, iterator invalidation, typical use cases, and distinctions between compile-time and runtime polymorphism including overloading, templates, inheritance, and virtual functions. It is commonly asked in software engineering fundamentals interviews to assess reasoning about performance and design trade-offs in C++ systems code; the domain is C++ programming, data structures, and OOP, and the level of abstraction spans both conceptual understanding and practical application.