Rust

Collections

Vec<T>, String, HashMap, HashSet, iterators, collect, ownership with collections

20 câu hỏi phỏng vấn·
Junior
1

Which method allows adding an element to the end of a Vec<T>?

Câu trả lời

The push() method adds an element to the end of the vector, increasing its size by 1. This operation has amortized O(1) complexity because the vector may need to reallocate memory if capacity is exceeded. To add multiple elements, extend() or append() can be used depending on the needs.

2

What is the main difference between String and &str in Rust?

Câu trả lời

String is an owned type stored on the heap, mutable and resizable. &str is an immutable reference to a UTF-8 sequence, often called a 'string slice'. String owns its data and can be modified, while &str borrows existing data without owning it. This distinction is fundamental for memory management in Rust.

3

How to create a new empty Vec<i32> in Rust?

Câu trả lời

Vec::new() creates an empty vector without initial allocation. The vec![] macro can also create an empty vector, but Vec::new() is the standard explicit method. The generic type can be inferred or explicitly specified with turbofish syntax Vec::<i32>::new() or by type annotation.

4

What does the get() method return on a Vec<T>?

5

Which data structure to use for associating keys with values with O(1) average access?

+17 câu hỏi phỏng vấn

Nắm vững Rust cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí