Rust

Colecciones

Vec<T>, String, HashMap, HashSet, iteradores, collect, ownership con colecciones

20 preguntas de entrevista·
Junior
1

¿Qué método permite agregar un elemento al final de un Vec<T>?

Respuesta

El método push() agrega un elemento al final del vector, aumentando su tamaño en 1. Esta operación tiene una complejidad amortizada O(1) porque el vector puede necesitar reasignar memoria si se excede la capacidad. Para agregar varios elementos, se puede usar extend() o append() según las necesidades.

2

¿Cuál es la diferencia principal entre String y &str en Rust?

Respuesta

String es un tipo poseído (owned) almacenado en el heap, mutable y redimensionable. &str es una referencia inmutable a una secuencia UTF-8, a menudo llamada 'string slice'. String posee sus datos y puede modificarse, mientras que &str toma prestados datos existentes sin poseerlos. Esta distinción es fundamental para la gestión de memoria en Rust.

3

¿Cómo crear un nuevo Vec<i32> vacío en Rust?

Respuesta

Vec::new() crea un vector vacío sin asignación inicial. La macro vec![] también puede crear un vector vacío, pero Vec::new() es el método explícito estándar. El tipo genérico puede inferirse o especificarse explícitamente con la sintaxis turbofish Vec::<i32>::new() o mediante anotación de tipo.

4

¿Qué retorna el método get() en un Vec<T>?

5

¿Qué estructura de datos usar para asociar claves con valores con acceso O(1) en promedio?

+17 preguntas de entrevista

Domina Rust para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis