Режа: Chiziqli ma’lumotlar tuzilmalari. Stl


Download 1.8 Mb.
bet4/10
Sana14.12.2022
Hajmi1.8 Mb.
#1006312
1   2   3   4   5   6   7   8   9   10
Bog'liq
Ìàâçó Chiziqli ma’lumotlar tuzilmalari Statik va di Chiziqli k

1. Kiritish iteratorlar (input_iterator) tenglik, nomini o‘zgartirish va inkrementa operatsiyalarni qo‘llaydi.

• ==, !=, *i, ++i, i++, *i++
Kiritish iteratsiyasining maxsus xolati istream_iterator dan iborat.
    • 2. Chiqarish iteratorlar (output_iterator) o‘zlashtirish operatorning chap tarafidan imkon bo‘lgan isimning o‘zgartirish va inkremental operatsiyalar qo‘llanadi.

• ++i, i++, *i=t, *i++=t
Chiqarish iteratsiyasining maxsus xolati ostream_iterator.

    • 3. Bitta yo‘nalishdagi iteratorlar (forward_iterator)
kiritish/chiqarish operatsiyalarning barchasini qo‘llaydi, bundan tashqari chegarasiz o‘zlashtirishning imkonini beradi.

• ==, !=, =, *i, ++i, i++, *i++

  • 4. Ikki yo‘nalishdagi iteratorlar (biderectional_iterator) forward-iteratorlarning barcha xususiyatlariga ega, bundan tashqari, konteynerni ikkita yo‘nalishi bo‘yicha o‘tish imkonini beradigan qo‘shimcha dekremental (--i, i--, *i--) operatsiyasiga ega.

  • 5. Ixtiyoriy ruxsatga ega bo‘lgan iteratorlar (random_access_iterator) biderectional-iteratorlarning barcha xususiyatlariga ega, bundan tashqari solishtirish va manzil arifmetikasi operatsiyalarni qo‘llaydi.

  • i+=n, i+n, i-=n, i-n, i1-i2, i[n], i1i2, i1>=i2

  • Shuningdek, STLda teskari iteratorlar (reverse iterators) qo‘llaniladi. Ketma-ketlikni teskari yo‘nalishda o‘tuvchi ikki yo‘nalishli yoki ixtiyoriy ruxsatga ega bo‘lgan iteratorlar teskari iteratoralar bo‘lishi mumkin.

Misol. n ta haqiqiy sonli ro’yxat hosil qiling va uning barcha elementlari yig’indisini toping.

    • Dastur kodi:

    • #include

    • #include

    • using namespace std;

    • int main()

    • {

    • int s=0,n;

    • cout<<"n=";cin>>n;

    • listl;


    • l.push_back(0);

    • for(int i=1;i

    • {

    • l.push_back(i);

    • }

    • for(list::iterator it=l.begin();it!=l.end();it++)

    • {

    • s+=*it;

    • }

    • cout<

    • }

Download 1.8 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




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