# Колекції (Rust) > Vec, String, HashMap, HashSet, ітератори, collect, ownership з колекціями - 20 питань зі співбесід - Junior - [Питання зі співбесід: Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy.md) ## 1. Який метод дозволяє додати елемент у кінець Vec? **Відповідь** Метод push() додає елемент у кінець вектора, збільшуючи його розмір на 1. Ця операція має амортизовану складність O(1), оскільки вектору може знадобитися перерозподілити пам'ять, якщо перевищено місткість. Щоб додати кілька елементів, можна використати extend() або append() залежно від потреб. ## 2. Яка основна різниця між String і &str у Rust? **Відповідь** String — це власний (owned) тип, що зберігається в heap, змінюваний і з регульованим розміром. &str — це незмінне посилання на UTF-8 послідовність, яке часто називають 'string slice'. String володіє своїми даними і може бути змінений, тоді як &str позичає наявні дані, не володіючи ними. Це розрізнення є фундаментальним для керування пам'яттю в Rust. ## 3. Як створити новий порожній Vec у Rust? **Відповідь** Vec::new() створює порожній вектор без початкового виділення пам'яті. Макрос vec![] також може створити порожній вектор, але Vec::new() — це стандартний явний метод. Узагальнений тип може бути виведений або явно вказаний за допомогою синтаксису turbofish Vec::::new() чи анотацією типу. ## Ще 17 доступних питань - Що повертає метод get() для Vec? - Яку структуру даних використовувати для пов'язування ключів зі значеннями із середнім доступом O(1)? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Rust - [Основи Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/rust-basics.md): 25 запитань, Junior - [Ownership & Borrowing](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/ownership-borrowing.md): 22 запитань, Junior - [Structs & Enums](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/structs-enums.md): 20 запитань, Junior - [Обробка помилок](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/error-handling.md): 18 запитань, Junior - [Модулі та пакети](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/modules-packages.md): 18 запитань, Junior - [Traits](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/traits.md): 22 запитань, Mid-Level - [Generics](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/generics.md): 20 запитань, Mid-Level - [Lifetimes](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/lifetimes.md): 20 запитань, Mid-Level - [Iterators & Closures](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/iterators-closures.md): 22 запитань, Mid-Level - [Smart Pointers](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/smart-pointers.md): 22 запитань, Mid-Level - [Concurrency Basics](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/concurrency-basics.md): 20 запитань, Mid-Level - [async/await](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/async-await.md): 22 запитань, Mid-Level - [Testing](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/testing.md): 18 запитань, Mid-Level - [Cargo & Ecosystem](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/cargo-ecosystem.md): 18 запитань, Mid-Level - [Pattern Matching](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/pattern-matching.md): 18 запитань, Mid-Level - [Макроси](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/macros.md): 20 запитань, Mid-Level - [Serde та серіалізація](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/serde-serialization.md): 20 запитань, Mid-Level - [Unsafe Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/unsafe-rust.md): 20 запитань, Senior - [Просунуті trait'и](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/advanced-traits.md): 22 запитань, Senior - [Просунуті Lifetimes](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/advanced-lifetimes.md): 20 запитань, Senior - [Type System](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/type-system.md): 20 запитань, Senior - [Tokio & Async I/O](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/tokio-async.md): 22 запитань, Senior - [Оптимізація продуктивності](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/performance-optimization.md): 20 запитань, Senior - [Memory Management](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/memory-management.md): 20 запитань, Senior - [Web Frameworks](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/web-frameworks.md): 22 запитань, Senior - [Database Integration](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/database-integration.md): 20 запитань, Senior - [Патерни проєктування Rust](https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/design-patterns.md): 20 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/rust/pytannia-spivbesidy/collections