113
С++ DASTURLASH TILIDA KOLLEKSIYALARDAN FOYDALANISH.
ИСПОЛЬЗОВАНИЕ КОЛЛЕКЦИЙ В ЯЗЫКЕ ПРОГРАММИРОВАНИЯ C++
USING COLLECTIONS IN THE C++ PROGRAMMING LANGUAGE
Shermatova Xilola Mirzayevna
Fargʻona davlat universiteti Axborot texnologiyalari kafedrasi dotsenti
shermatovahilola1978@gmail.com
Mirzayeva Dilnoza Tohirjon qizi
Fargʻona davlat universiteti Axborot tizimlari va texnologiyalar yo‘nalishi
1-kurs talabasi
https://doi.org/10.5281/zenodo.15189229
Annotatsiya.
Ushbu maqolada C++ dasturlash tilida kolleksiyalardan foydalanish asoslari yoritiladi.
Kolleksiyalar – bu bir nechta elementlarni tartibli yoki tartibsiz holda saqlash va boshqarish
imkonini beruvchi ma’lumot tuzilmalari bo‘lib, ularning to‘g‘ri qo‘llanilishi dastur
samaradorligini oshirishga yordam beradi. Maqolada standart kutubxona (STL) kolleksiyalari,
jumladan, vector, list, set, map kabi asosiy konteynerlar, ularning afzalliklari, kamchiliklari va
amaliy qo‘llanilishiga e’tibor qaratiladi. Shuningdek, kolleksiyalardan samarali foydalanish
bo‘yicha maslahatlar va misollar keltiriladi. Ushbu maqola C++ dasturlash tilida ishlovchi
dasturchilar uchun foydali manba bo‘lib xizmat qiladi.
Annotation.
This article explores the fundamentals of using collections in the C++ programming
language. Collections are data structures that allow the storage and management of multiple
elements in an ordered or unordered manner, and their proper utilization enhances program
efficiency. The article covers standard library (STL) collections, including key containers such
as vector, list, set, and map, discussing their advantages, disadvantages, and practical
applications. Additionally, tips and examples for efficient usage of collections are provided. This
article serves as a valuable resource for developers working with C++.
Аннотация.
В данной статье рассматриваются основы использования коллекций в языке
программирования C++. Коллекции представляют собой структуры данных,
позволяющие хранить и управлять множеством элементов в упорядоченном или
неупорядоченном виде, а их правильное применение повышает эффективность
программ. В статье рассматриваются коллекции стандартной библиотеки (STL),
включая основные контейнеры, такие как vector, list, set, map, их преимущества,
недостатки и практическое применение. Кроме того, приведены советы и примеры
эффективного использования коллекций. Эта статья будет полезным ресурсом для
разработчиков, работающих с C++.
Kalit so‘zlar
C++ kolleksiyalar, ma’lumot tuzilmalari, STL konteynerlar, vector, list, set, map,
algoritmlar, samaradorlik, dasturlash, kod optimizatsiyasi, massivlar, iteratorlar,
ma’lumotlarni saqlash, C++ kutubxonasi.
Ключевые слова:
114
C++ collections, data structures, STL containers, vector, list, set, map, algorithms,
efficiency, programming, code optimization, arrays, iterators, data storage, C++ library.
Ключевые слова:
Коллекции C++, структуры данных, контейнеры STL, vector, list, set, map,
алгоритмы, эффективность, программирование, оптимизация кода, массивы,
итераторы, хранение данных, библиотека C++.
Kirish
Zamonaviy dasturlashda ma’lumotlarni samarali saqlash va boshqarish muhim ahamiyat
kasb etadi. C++ dasturlash tilida bu maqsadda kolleksiyalar keng qo‘llaniladi. Kolleksiyalar – bu
bir nechta elementlarni bir joyda saqlash va ularga turli usullar bilan ishlov berish imkonini
beruvchi maxsus ma’lumot tuzilmalari hisoblanadi. Ular dasturlash jarayonini soddalashtirish,
kodni ixcham va samarali yozish hamda dastur tezligini oshirishga yordam beradi.
C++ tilida kolleksiyalarni qo‘llash uchun Standart Shablon Kutubxonasi (STL – Standard
Template Library) asosiy vositalardan biri hisoblanadi. STL tarkibida vector, list, set, map kabi
asosiy konteynerlar mavjud bo‘lib, ular ma’lumotlarni turli xil usullarda saqlash va ularga
ishlov berish imkonini beradi. Vector dinamik massiv sifatida ishlaydi, list ikki bog‘langan
ro‘yxatni ifodalaydi, set unikal qiymatlarni saqlash uchun mo‘ljallangan, map esa kalit-qiymat
juftliklari asosida ma’lumotlarni boshqaradi.
Ushbu maqolada C++ dasturlash tilida kolleksiyalardan foydalanishning asosiy
tamoyillari, ularning afzallik va kamchiliklari hamda amaliy misollar tahlil qilinadi.
vector dan foydalanish
Masala: Foydalanuvchidan sonlar kiritishni so‘rab, ularni vector ga joylashtirish va
yig‘indisini hisoblash.
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> sonlar;
int son, n;
cout << "Nechta son kiritmoqchisiz? ";
cin >> n;
for (int i = 0; i < n; i++) {
cout << i + 1 << "-sonni kiriting: ";
cin >> son;
sonlar.push_back(son);
}
int yigindi = 0;
for (int s : sonlar) {
yigindi += s;
115
}
cout << "Sonlar yig‘indisi: " << yigindi << endl;
return 0;
}
list dan foydalanish
Masala: Bog‘langan ro‘yxatga (list) elementlar qo‘shish, o‘chirish va chiqarish.
#include <iostream>
#include <list>
using namespace std;
int main() {
list<int> raqamlar = {10, 20, 30, 40};
raqamlar.push_front(5); // Boshiga qo‘shish
raqamlar.push_back(50); // Oxiriga qo‘shish
raqamlar.pop_front(); // Boshidan olib tashlash
raqamlar.pop_back(); // Oxiridan olib tashlash
cout << "Ro‘yxatdagi elementlar: ";
for (int r : raqamlar) {
cout << r << " ";
}
cout << endl;
return 0;
}
set dan foydalanish
Masala: Foydalanuvchi kiritgan sonlarni takrorlanmas holda set da saqlash.
#include <iostream>
#include <set>
using namespace std;
int main() {
set<int> noyob_sonlar;
int n, son;
116
cout << "Nechta son kiritmoqchisiz? ";
cin >> n;
for (int i = 0; i < n; i++) {
cout << i + 1 << "-sonni kiriting: ";
cin >> son;
noyob_sonlar.insert(son);
}
cout << "Takrorlanmas sonlar: ";
for (int s : noyob_sonlar) {
cout << s << " ";
}
cout << endl;
return 0;
}
Xulosa
C++ dasturlash tilida kolleksiyalardan foydalanish ma’lumotlarni samarali saqlash va
boshqarish imkonini beradi. Standart Shablon Kutubxonasi (STL) yordamida vector, list, set,
map, queue, stack kabi turli xil konteynerlardan foydalanish mumkin. Har bir kolleksiya o‘ziga
xos xususiyatlarga ega bo‘lib, ular ma’lumotlar tuzilmasini yanada optimal shakllantirishga
yordam beradi.
Vector dinamik massiv sifatida ishlaydi va tezkor kirish imkoniyatini ta’minlaydi. List esa
bog‘langan ro‘yxat bo‘lib, elementlarni qo‘shish va o‘chirish operatsiyalarini samarali bajaradi.
Set takrorlanmas elementlarni saqlash uchun juda qulay bo‘lsa, map kalit-qiymat juftliklari
orqali ma’lumotlarni boshqarishga imkon beradi. Queue navbat tamoyiliga asoslangan bo‘lib,
birinchi kirgan element birinchi chiqariladi (FIFO), stack esa oxirgi kirgan element birinchi
chiqariladi (LIFO) prinsipida ishlaydi.Kolleksiyalardan to‘g‘ri foydalanish kodni
soddalashtirish, samaradorlikni oshirish va dastur tezligini yaxshilashga yordam beradi. Shu
sababli, C++ dasturchilari kolleksiyalarning xususiyatlarini yaxshi tushunib, ularni kerakli
joylarda to‘g‘ri qo‘llashlari muhimdir. Ushbu maqolada berilgan tushunchalar va kod misollari
dasturchilarga kolleksiyalar bilan ishlash bo‘yicha mustahkam bilim va amaliy tajriba hosil
qilishga yordam beradi.
Foydalanilgan adabiyotlar/Используемая литература/References:
1.
Bjarne Stroustrup – The C++ Programming Language (4th Edition). Addison-Wesley,
2013.
2.
Nicolai M. Josuttis – The C++ Standard Library: A Tutorial and Reference (2nd Edition).
Addison-Wesley, 2012.
3.
Scott Meyers – Effective STL: 50 Specific Ways to Improve Your Use of the Standard
Template Library. Addison-Wesley, 2001.
117
4.
ISO/IEC 14882:2020 – International Standard for C++20.
5.
cppreference.com – C++ Standard Library Documentation (https://en.cppreference.com).