Islom iqtisodiyoti va xalqaro munosabatlar fakulteti axborot xavfsizligini boshqarish mutaxassisligi



Download 219,11 Kb.
Sana29.05.2022
Hajmi219,11 Kb.
#618185
Bog'liq
10-Amaliyot ishi Algoritm


O‘ZBEKISTON XALQARO ISLOM AKADEMIYASI
ISLOM IQTISODIYOTI VA XALQARO MUNOSABATLAR FAKULTETI
AXBOROT XAVFSIZLIGINI BOSHQARISH MUTAXASSISLIGI

“Algoritmlarni loyihalashtirish va tahlil qilish” fanidan



Amaliy mashg‘ulot

Mavzu: Array va bog’langan list


Bajardi: Xushvaqtov Oybek
Qabul qiluvchi: PhD D.S.Tuxtanazarov

Toshkent-2022


10 - Amaliy mashg‘ulot
Mavzu: Array va bog’langan list (Linedlist)

1. Masalaning berilishi.
Linkid list yaratish va unga element qo’shish
2. Masalaning yechilishi.
LinkedList massiv kabi chiziqli ma'lumotlar strukturasi(MS) bo'lib, lekin undagi elementlarning to'liq-kesiq o'rni (indeks) mavjud emas. Elementlar o'zara ko'rsatkich(yo'llanma) yoki "link"lar bilan bo'glanadi.
So'zni Linkedlist tashkil etuvchisi sodda MS "node"dan boshlaymiz. O'zbekchasiga xalqa deb olishimiz mumkin. (Aslida, terminlarni to'g'ridan to'g'ri o'zbekchaga tarjima qilish tarafdori emasman.) Quyidagi rasmda xalqa ifodalangan.

Ushbu MS ko'plab boshqa katta MS lar uchun qurilishi materiali vazifasini bajarib beradi. Rasmda ko'rinib turganidek, xalqa o'zida qandaydur obyektni va keyingi xalqaga yo'llanmani saqlaydi. Quyidagi kod parchasida node ifodalangan.
class Node:
def __init__(self,data):
self.data = data
self.next = None

Xalqada saqlanayotgan elementlarning tipi har doim bir bo'lishi lozim. Bir necha xalqalarni birlashtirgan holda zanjirni hosil qilamiz. Demak, zanjir bu bir dan ortiq xalqalarning to'plami bo'lib, ular o'zaro faqat birgina link bilan bog'lanadi(Keyingi maqolalarimizda bog'lanishlar soni birdan ortiq bo'lgan holatni ham e'tiborga olib o'tamiz.). Quyidagi rasmda zanjirga misol keltirilgan.



Zanjirning birinchi elementi Bosh va oxirgi elementi mos ravishda Dum deb ataladi. Zanjirning har bir xalqasi o'zidan keyingi xalqaga link yordamida bo'glangan. [A,B,C,D,E] bular xalqalarda saqlanayotgan obyektlardir. Bu zanjir LinkedList bo'lishi uchun bir necha qo'chimcha metodlarni qo'shishimiz lozim.

class Node:


def __init__(self,data):
self.data = data
self.next = None

class LinkedList:


def __init__(self):
self.head = None
def printList(self):
temp = self.head
while temp:
print(temp.data)
temp = temp.next
def push(self,new_data):
new_node = Node(new_data)
new_node.next = self.head
self.head = new_node
def insertAfter(self,prev_node, new_data):
if prev_node is None:
print("Tugun mavjud emas")
return
new_node = Node(new_data)
new_node.next = prev_node.next
prev_node.next = new_node
def append(self, new_data):
new_node = Node(new_data)
if self.head is None:
self.head = new_node
return
last = self.head
while last.next:
last = last.next
last.next = new_node

from code import LinkedList, Node

## Linked List yaratamiz
llist = LinkedList()

## Uchta node (tugun) yaratamiz


llist.head = Node('Dushanba')
tuesday = Node('Seshanba')
wednesday = Node('Chorshanba')

## Tugunlarni bog'laymiz


llist.head.next = tuesday
tuesday.next = wednesday
## List boshiga yangi tugun qo'shamiz
llist.push('Yakshanba')
llist.append('Payshanba')
llist.append('Juma')


Download 219,11 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish