Umumiy koʻrinish


Eng yaxshi vaqt murakkabligi: O(1)



Download 388,61 Kb.
bet4/9
Sana12.07.2022
Hajmi388,61 Kb.
#783130
1   2   3   4   5   6   7   8   9
Bog'liq
MirzajonovaMohinurxon 20.08

Eng yaxshi vaqt murakkabligi: O(1)
2. Insertion (qo'shish)
Talabga ko'ra massivga bir yoki bir nechta elementlarni kiritishimiz mumkin, albatta, elementni massivning boshiga yoki massivning oxiriga qo'shishimiz mumkin .
Biz element qo'shilishi kerak bo'lgan indeksni (pozitsiyani) berib, massivning istalgan joyiga element qo'shishimiz mumkin.
Aytaylik , biz oltita stol hosil qilish uchun qo'shimcha stol qo'yishimiz kerak edi, lekin hozir bizda 5 ta bor va mijozning xohishiga ko'ra biz stolni 2- stol, 3 -stol o'rtasida joylashtirishimiz kerak va stolni u erga joylashtirishimiz kerak. 3- jadval va 3-dan keyin qolganlari.
Iltimos, bu rasmni tasavvur qilmaguningizcha va jadvallarni almashtirishni tasavvur qilmaguningizcha oldinga siljmang, qayta o'qing, tushuning. Bizda 6 ta jadval bo'lganligi sababli, biz noOfDrinks massivimizni kengaytirishimiz va elementni (buyurtmalarni) kiritishimiz kerak.

#include


int main() {
int tables[] = {1,2,3,4,5};
int noOfDrinks[] = {5,2,3,5,7};
int n=5; //array size
int pos=2; //index of element to be added
int item = 4; //element to be added
n= n+1; //incrementing the size of the array by 1
int j=n-2; //adjusting the value of loop counter to the last index
while (j>=pos){ //traversing noOfDrinks[] from last
noOfDrinks[j+1] = noOfDrinks[j]; //copying the element to the incremented block
j=j-1;
}
noOfDrinks[pos] = item ; //copying the element to the vacated position
printf("Tables "Number of orders for drinks after adding a table :\n\n");
for(int i=0; iprintf(" %d \t %d \n", i+1, noOfDrinks[i]);
}}
Biz siz kuzatganingizdek jadvallarni o'zgartirishning xuddi shunday yondashuvini qo'lladik, elementlarni 2 pozitsiyadan keyin siljitdik, chunki biz elementni 2- pozitsiyaga kiritishimiz kerak edi:

  • Birinchi qadam, biz yangi elementni sozlash uchun massiv hajmini oshiramiz

  • Biz halqa hisoblagichi 'j' qiymatini sozlaymiz, shuning uchun biz tsiklni oxirgi elementdan boshlaymiz va keyin pastki indekslarga o'tamiz.

  • Keyin shart bilan while tsiklini qo'yamiz, j esa pos dan katta yoki teng bo'lsa, tsikl bajarilishi kerak.

  • Loopni kuzating, oxirgi element (5-chi) yangi pozitsiyaga ( 6-chi ; hozir oxirgi), xuddi shunday, 4- dan 5 -gacha va hokazo, keyin biz yangi elementni kerakli joyga ko'chirdik va uni ko'rsatamiz.

Ushbu koddan nusxa oling, uni kompilyatorga joylashtiring, natijani tushuning, kodni o'qing, qo'shilgan elementlar va o'zgartirilgan elementlarning xom oqimini chizing, ushbu o'zgaruvchilardan (i, j, n, a) foydalanishga harakat qiling. sizning oqimingizda. Menga ishoning, yuqoridagi parchadagi elementlar oqimining aniqligi ushbu maqolaning qolgan qismi siz uchun qanchalik oson bo'lishiga to'g'ridan-to'g'ri proportsionaldir.
Qo'shishning vaqt murakkabligi o'tish bilan bir xil bo'ladi. Element boshlang'ich indeksga, oxirgi indeksga yoki massivning o'rtasiga qo'shilishi mumkin . Elementni massivning o‘rtasiga yoki boshiga qo‘shish o‘rtacha va eng yomon vaqt murakkabligiga ega bo‘ladi, chunki qo‘shilgan elementdan so‘ng har bir element o‘z o‘rnini birga o‘zgartiradi, lekin element massiv oxiriga qo‘shilganda, faqat bir qadam kerak bo‘ladi. eng yaxshi vaqt murakkabligi.
1   2   3   4   5   6   7   8   9




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