Rust

Collections

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

20 面接問題·
Junior
1

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

回答

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?

回答

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?

回答

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 面接問題

次の面接に向けてRustをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める