Arraylər

Python SELF AZ
Səviyyə , Dərs
Mövcuddur

4.1 Massivin təyin edilməsi və onun xüsusiyyətləri

Massiv — eyni tipli elementlərin nizamlı yığını olan verilənlər quruluşudur. Bu elementlər yaddaşda ardıcıl yerləşdirilir. Hər bir massiv elementi unikal indeksə malikdir və ona bu indeks vasitəsilə müraciət edilir.

Burada 4 ölçülü sadə bir massiv göstərilib, daxilindəki elementlər (1, 2, 3 və 4).

Massivin təyin edilməsi və onun xüsusiyyətləri

Massivin xüsusiyyətləri:

  • Fiksasiya olunmuş ölçü: Massivin ölçüsü yaradılarkən təyin olunur və proqramın icrası zamanı dəyişdirilə bilməz.
  • Elementlərin eynicinsliliyi: Massivin bütün elementləri eyni tipdə olmalıdır (məsələn, tam ədədlər, sətirlər).
  • Yaddaşda ardıcıl yerləşmə: Massivin elementləri yaddaşda ardıcıl hüceyrələrdə saxlanılır ki, bu da indeksi üzrə sürətli çıxış təmin edir.
  • İndeksi üzrə sürətli çıxış: Massivin istənilən elementinə çıxış sabit vaxt O(1) ilə həyata keçirilir.

4.2 Massivlərin istifadəsinə nümunələr

Massivlərin istifadəsinə aid bəzi nümunələri nəzərdən keçirək, bunları artıq bilə bilərsiniz:

Fiks uzunluqlu məlumatların saxlanılması

Həftənin günləri, ilin ayları:


# Həftənin günlərinin massivinin yaradılması
days_of_week = ["Bazar ertəsi", "Çərşənbə axşamı", "Çərşənbə", "Cümə axşamı", "Cümə", "Şənbə", "Bazar"]
print(days_of_week[2])  # Çap: Çərşənbə

Matrislər və çoxölçülü massivlər

3x3 matrisi:


# 3x3 matrisinin yaradılması
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]
print(matrix[1][1])  # Çap: 5

Sıralama alqoritmlərində istifadə

Rəqəmlər massivinin sıralanması:


# Rəqəmlər massivinin sıralanması
numbers = [5, 2, 9, 1, 5, 6]
numbers.sort()  # Massivin sıralanması
print(numbers)  # Çap: [1, 2, 5, 5, 6, 9]

Müvəqqəti məlumatların saxlanılması üçün bufer

Fayldan məlumatların oxunması üçün bufer:


# 1024 bayt ölçüdə buferin yaradılması
buffer = [0] * 1024
print(len(buffer))  # Çap: 1024

4.3 Massivlərlə əsas əməliyyatlar

Vacibdir! Python-da list sinfi dinamik massivdir, o, işləmə zamanı ölçüsünü dəyişə bilər. Dinamik massivlər haqqında daha ətraflı bir neçə mühazirədən sonra öyrənəcəksiniz.

Əsas əməliyyatlar: indeks üzrə giriş, əlavə etmə, silmə

İndeks üzrə giriş

Massiv elementlərinə giriş indeks vasitəsilə həyata keçirilir, hansı ki, onun yerini göstərir.


# Massiv elementlərinə indeks üzrə giriş
arr = [10, 20, 30, 40, 50]
print(arr[2])  # Nəticə: 30
print(arr[-1])  # Nəticə: 50 (sonuncu element)

Əlavə etmə

Massivə element əlavə etmək üçün yeni element üçün yer açmaq məqsədilə bütün növbəti elementləri təxirə salmaq lazım ola bilər.

Nümunə (massivin ortasına element əlavə etmək):


# Massivə element əlavə etmək
arr = [10, 20, 30, 40, 50]
arr.insert(2, 25)  # 25-i 2 mövqeyinə əlavə etmək
print(arr)  # Nəticə: [10, 20, 25, 30, 40, 50]

Silinmə

Massivdən element silmək üçün, boş qalmış yeri doldurmaq məqsədilə bütün növbəti elementləri təxirə salmaq lazım ola bilər.

Nümunə (elementin silinməsi):


# Massivdən elementin silinməsi
arr = [10, 20, 30, 40, 50]
arr.pop(2)  # 2 mövqeyindəki elementi silmək
print(arr)  # Nəticə: [10, 20, 40, 50]

4.4 Massivlərin istifadəsinin üstün və mənfi cəhətləri

Massivlərin istifadəsinin üstün və mənfi cəhətlərini nəzərdən keçirək:

Üstün cəhətlər:

  • İndeksə görə sürətli giriş: Massivin istənilən elementinə giriş sabit vaxtda O(1) həyata keçirilir, bu da massivləri məlumatların oxunması üçün çox effektiv edir.
  • Sadə reallaşdırma: Massivləri anlamaq və istifadə etmək asandır, onları fərqli problemlərin həlli üçün tətbiq etmək çətin deyil.
  • Aşağı əlavə xərclər: Massivlər bağlı siyahılar kimi daha mürəkkəb verilənlər strukturları ilə müqayisədə daha az yaddaş tutur.

Mənfi cəhətlər:

  • Sabit ölçü: Massivin ölçüsü onun yaradılması zamanı təyin olunur və dəyişdirilə bilməz. Bu o deməkdir ki, əvvəlcədən lazım olan ölçünü bilmək və ya tələbat artdıqca artırıla bilən dinamik massivlərdən istifadə etmək lazımdır.
  • Əlavə və silmə xərcləri: Elementlərin əlavə edilməsi və silinməsi vaxt baxımından çox xərc tələb edə bilər, çünki elementlərin yerdəyişməsi lazım olur. Ən pis halda, massivdə ortadakı elementi əlavə etmək və ya silmək O(n) vaxt tələb edir.
  • Yaddaşın qeyri-effektiv istifadəsi: Əgər massiv tam istifadə olunmursa, boş yaddaş hüceyrələri dolu qalmış olur, bu da yaddaşın qeyri-effektiv istifadəsinə səbəb ola bilər.
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION