Junior — Middle
Can you name patterns used for building data structures?
sobes.tech AI
Answer from AI
In Java, the following design patterns are often used for building data structures:
- Composite — allows building tree-like structures where individual objects and their compositions are treated uniformly.
- Decorator — adds functionality to objects dynamically without changing their structure.
- Iterator — provides a way to access elements of a collection sequentially without exposing its internal representation.
- Factory — used for creating data structure objects without specifying their concrete classes.
For example, the Composite pattern is often used to implement trees:
interface Component {
void operation();
}
class Leaf implements Component {
public void operation() {
System.out.println("Leaf operation");
}
}
class Composite implements Component {
private List<Component> children = new ArrayList<>();
public void add(Component component) {
children.add(component);
}
public void operation() {
for (Component child : children) {
child.operation();
}
}
}
These patterns help create flexible and extensible data structures.