Ma’lumotlar tuzilmasi,tuzilmalar ustida bajariladigan amallar.Dasturlash texnalogiyalari Barcha dastur yoki dasturiy mahsulotning asosida ikkita birlik yotadi: ma’lumotlar va ular ustida qandaydir amallar bajaradigan algoritmlar. Algoritmlar ma’lumotlarni biz yoki dastur uchun foydali bo’lgan axborot ko’rinishiga keltirib beradi. Algoritmlar shu ma’lumotlar ustida amallarni (o’qish, yozish, yangilash, o’chirish) samarali va tez bajara olishi uchun biz shu ma’lumotlarni ma’lum bir strukturaga solgan holda saqlashimiz kerak bo’ladi. Demak shunday qilib, Ma’lumotlar tuzilmasi — bu ma’lumotlarni samarali o’qish va o’zgartirish imkonini beruvchi, ma’lumotlarni saqlash va boshqarishning bir formatga solingan shaklidir. Soddaroq qilib aytganda, ma’lumotlar tuzilmasi — bu ma’lumotlarning ma’lum bir strukturaga solingan, ular o’rtasida ma’lum bir bog’lanishlar yaratilgan va ular ustida ma’lum amallar bajaruvchi funksiyalardan tashkil topgan guruh. Eng sodda ma’lumotlar tuzilmasiga misol qilib massiv (array)ni ko’rsatishimiz mumkin. Asosiy ma’lumotlar tuzilmalari Quyida keltirilgan ma’lumotlar tuzilmalari dasturlashda eng ko’p qo’llaniladigan tuzilmalardir. Ularga:
1. Massiv (Array) 2. Bog’langan ro’yhat (Linked List) 3. Navbat (Queue) 4. Stek (Stack) 5. Hash jadvallar (Hash tables) 6. Daraxtlar (Trees) 7. Graflar (Graph) kiradi. Biz bu bo’limda boshidagi 5 ta tuzilma bilan yaqindan tanishib, ularning kuchli va kuchsiz tomonlari va ularni qanday holatlarda ishlatish ma’qulligi haqida gaplashib o’tamiz. Qolgan ikkita tuzilma murakkabroq bo’lib ular o’z ichida yana ko’plab turlarga bo’linib ketadi. Shuning uchun ularni keyinroqqa qoldiramiz. Bundan tashqari barcha tuzilmalarning hamma joyda ingliz tilidagi nomi ishlatilgani va ularning nomi odatda tarjima qilinmaganligi sababli keyingi o’rinlarda men ularning asosan ingliz tilidagi nomlarini ishlataman. Turli xildagi ma’lumotlar tuzilmalari nima uchun kerak? Ma’lumotlar tuzilmalari nimaligi haqida qisman tasavvurga ega bo’ldingiz va ularning asosiy turlari bilan ham tanishib oldingiz. Lekin, shu joyga kelib agar sizda “Nima uchun ma’lumotlarning turli xil tuzilmalari kerak?” “Nima uchun bir turdagi universal ma’lumotlar tuzilmalaridan foydalanib qo’ya qolsa bo’lmaydi?” degan savol tug’ilmagan bo’lsa, bu yaxshi emas.) Keling endi shu savolga javob topishga harakat qilamiz. Undan oldin ma’lumotlar tuzilmalari ustida asosiy bajarilishi mumkin bo’lgan amallarni ko’rib chiqaylik. Bularga ma’lumotlarni Ko’rib chiqish (Traversing) O’qib olish (Retrieving) Kiritish (Insertion) O’chirish (Deletion) Qidirish (Search) Saralash (Sorting) Birlashtirish (Merging)lar kiradi. Turli xildagi ma’lumotlar tuzilmalarida esa yuqoridagi amallar turlicha tezlikda amalga oshadi. Masalan oddiyroq misol olaylik, array uchun ma’lumotni o’qib olish uchun O(1) vaqt sarflansa, uni kiritish yoki o’chirish uchun O(n) vaqt sarflanadi. Linked listda esa bular aksincha. Shuning uchun, masalan, sizning dasturingizda ma’lumotlar ko’p kiritilib, o’chirilsayu lekin kam o’qilsa, bunda ma’lumotlarni saqlashda arraydan foydalangandan ko’ra linked list qulayroq hisoblanadi. Lekin, ko’pincha holatda bir necha ma’lumotlar tuzilmalarini o’zini birlashtirgan gibrid ma’lumotlar tuzilmalaridan ham foydalaniladi.
Dasturlash texnologiyasi va uning rivojlanishining asosiy bosqichlari
Dasturiy ta’minotining ishlab chiqish jarayonida foydalaniladigan usullar va vositalar yig‘indisi dasturlash texnologiyalari deb ataladi. Har qanday boshqa texnologiya kabi, dasturlash texnologiyasi o‘z ichiga quyidagi texnologik yo‘riqnomalar to‘plamini olgan:
• texnologik operatsiyalarni bajarish ketma-ketligini ko‘rsatish;
• u yoki boshqa operatsiya bajariladigan shartlarni sanab o‘tish;
• har bir operatsiya uchun dastlabki ma’lumotlar, natijalar, shuningdek, yo‘riqnomalar, normativlar, standartlar, baholash mezonlari va usullari belgilangan operatsiyalarining ta’riflari Operatsiyalar (amallar) to‘plami va ular ketma-ketligidan tashqari, texnologiya, shuningdek ishlab chiqarishning muayyan bosqichida foydalaniladigan loyihalashtirilayotgan tizim ni, aniqrog‘i, modelni ta ’riflash usulini belgilaydi.
Do'stlaringiz bilan baham: |