Jinsi Ya Kuunda Safu Ya Nguvu

Orodha ya maudhui:

Jinsi Ya Kuunda Safu Ya Nguvu
Jinsi Ya Kuunda Safu Ya Nguvu

Video: Jinsi Ya Kuunda Safu Ya Nguvu

Video: Jinsi Ya Kuunda Safu Ya Nguvu
Video: FAHAMU VYAKULA VINAVYOSAIDIA KUONGEZA NGUVU ZA KIUME 2024, Novemba
Anonim

Seti ya vitu vya aina hiyo hiyo inaitwa safu. Shirika kama hilo la data lina faida nyingi dhahiri na kikwazo kimoja - wakati wa kuunda safu, inahitajika kutangaza saizi yake mapema, ambayo haiwezi kubadilishwa na njia za kawaida katika siku zijazo. Suluhisho la shida hii ni kukuza safu zenye nguvu ambazo zinaweza kubadilisha idadi ya vitu vyao wakati wowote. Kwa kuongezea, kwa hili, unaweza kutumia madarasa yote yaliyoundwa tayari, na utekeleze yako mwenyewe kwa kutumia zana za kawaida za lugha ya programu.

Jinsi ya kuunda safu ya nguvu
Jinsi ya kuunda safu ya nguvu

Maagizo

Hatua ya 1

Kiini kikuu cha safu ya nguvu ni kutenga kumbukumbu kwa data iliyohifadhiwa ndani yake haswa kwa saizi ambayo inahitajika kwa sasa. Ni rahisi zaidi kutekeleza ujenzi huu kwa njia ya darasa - kanga kwa safu. Hapa ni muhimu kutoa kwa kazi zote zinazofanya ugawaji na kutolewa kwa kumbukumbu kwa safu, na vile vile waendeshaji ambao hutoa ufikiaji wa vitu vyake.

Hatua ya 2

Unda kitu cha safu ya kufunika ya safu ya nguvu, na mjenzi atatenga kumbukumbu moja kwa moja ya saizi iliyoainishwa. Ikiwa, kama safu imejazwa, kumbukumbu ya vitu itachukuliwa kabisa, wakati wa kuongeza data inayofuata, vitendo vifuatavyo hufanywa: - habari yote kutoka kwa safu imehifadhiwa katika uhifadhi wa muda (safu msaidizi); - kumbukumbu iliyotengwa hapo awali ni iliyotolewa na amri maalum (bure, futa); - kumbukumbu imetengwa chini ya safu ya saizi ambayo inahitajika kuwa na data zote - maadili yote "ya zamani" yamewekwa kwenye safu mpya kutoka kwa uhifadhi wa muda na mpya kipengele kinaongezwa.

Hatua ya 3

Njia bora ya kufanya kazi na safu zenye nguvu ni kutumia darasa zilizopo za maktaba. Moja ya mifano ya kawaida ni darasa la vector. Inajumuisha kazi zote na iterators muhimu kwa utendaji wa safu inayoweza kubadilika. Kwa kuongezea, moduli ya maktaba iliyo na darasa hili hutolewa na toleo lolote la mkusanyaji wa C ++.

Hatua ya 4

Jumuisha maktaba ya safu ya nguvu kwa kutumia amri ya # pamoja. Tumia darasa la vector kuunda kitu. Kusonga kupitia safu ni sawa na katika hali ya kawaida, kwa kutumia fahirisi. Makala maalum hapa ni kazi za kuongeza na kuondoa vitu vipya, pamoja na idadi ya njia msaidizi. Mfano wa nambari ya kuunda na kuendesha vector ya safu ya nguvu: #Ijumuisha vector; vector int Mass; // tamko la safu ya nguvu na vitu vya aina intMas.push_back (10); // kuongeza kipengee cha kwanza - nambari 10 Mas. push_back (15); // kuongeza kipengee cha pili - nambari 15Mas [1] = 30; // kipengee cha pili kimeandikwa nambari 30Mas.pop_back (); // kufuta kipengee cha mwisho cha safu Hapa, wakati wa kuunda safu ya nguvu inayoitwa Misa, aina ya vitu vyake (int) lazima ielezwe, mwelekeo haujainishwa katika kesi hii.

Ilipendekeza: