Rust

Rust — ساختمان داده (Data Structures)

آخرین بروزرسانی: 1404/08/14

ساختمان داده (Data Structures)

در راست، «ساختمان داده (Data Structure)» یعنی ظرف هایی برای نگهداری و مدیریت داده. هر کدام کاربری خاص دارند؛ مثل مدرسه که کمد، پوشه، و قفل دارد.

آرایه ها (Arrays)

آرایه، لیست با اندازه ثابت و نوع یکسان است. بعداً بزرگ نمی شود.

fn main() {
  let fruits = ["apple", "banana", "orange"];
  println!("Last fruit: {}", fruits[2]);
}

مشاهده در ادیتور

نکته: اندیس از صفر شروع می شود. پس عنصر سوم، اندیس 2 دارد.

وکتورها (Vectors)

وکتور، آرایه قابل رشد است. می توانی عضو اضافه یا حذف کنی.

fn main() {
  let mut fruits = vec!["apple", "banana"];
  fruits.push("cherry");
  println!("Last fruit: {}", fruits[2]);
}

مشاهده در ادیتور

تاپل ها (Tuples)

تاپل می تواند چند نوع مختلف را کنار هم نگه دارد. دسترسی با نقطه و شماره است.

fn main() {
  let person = ("John", 30, true);
  println!("Name: {}", person.0);
  println!("Age: {}", person.1);
  println!("Is active: {}", person.2);
}

مشاهده در ادیتور

هش مپ ها (HashMaps)

هش مپ، داده ها را به صورت «کلید ← مقدار» نگه می دارد. باید آن را ایمپورت کنی.

use std::collections::HashMap;

fn main() {
  let mut capital_cities = HashMap::new();
  capital_cities.insert("France", "Paris");
  capital_cities.insert("Japan", "Tokyo");
  println!("Capital of Japan is {}", capital_cities["Japan"]);
}

مشاهده در ادیتور

گام های تمرین

  1. یک آرایه بساز و یک عنصرش را چاپ کن.
  2. یک وکتور بساز و با push گسترش بده.
  3. یک تاپل با انواع مختلف بساز و اجزایش را بخوان.
  4. یک HashMap بساز و مقدار با کلید را چاپ کن.

جمع بندی سریع

  • آرایه ثابت است؛ وکتور رشد می کند.
  • تاپل، انواع مختلف را گروه می کند.
  • هش مپ، جست وجو با کلید می دهد.
  • اندیس از صفر شروع می شود.

برای مفاهیم پایه، وام گیری و مالکیت را نیز ببین. سپس به صفحه ساختمان داده برگرد و مرور کن.