Авторы

  • Abdullayev Shaxboz Solijon o‘g‘li,Ismonaliyeva Dilbarxon Maxamadali qizi
    FarDU

DOI:

https://doi.org/10.71337/inlibrary.uz.ijsr.107437

Ключевые слова:

Qidirish algoritmlari chiziqli qidiruv ikkilik qidiruv graflarda qidiruv C dasturlash tili algoritmik tahlil vaqt va xotira murakkabligi ma’lumotlar tuzilmasi.

Аннотация

Ushbu maqolada kompyuter fanining muhim yo‘nalishlaridan biri bo‘lgan qidirish algoritmlari tahlil qilinadi. Qidirish algoritmlari — ma’lumotlar to‘plamida kerakli elementni aniqlash uchun ishlatiladigan asosiy usullardir. Maqolada chiziqli (linear search), ikkilik (binary search), shuningdek, graflarda qo‘llaniladigan kenglik bo‘yicha (BFS) va chuqurlik bo‘yicha (DFS) qidirish kabi mashhur algoritmlar ko‘rib chiqiladi. Ularning ishlash prinsipi, samaradorlik darajasi (kompleksligi), amaliy qo‘llanilishi hamda afzallik va kamchiliklari tahlil etiladi. Mazkur maqola algoritmik fikrlashni rivojlantirish va dasturlashda samarali algoritmlarni tanlay olish malakasini shakllantirishga qaratilgan.


background image

INTERNATIONAL JOURNAL OF SCIENTIFIC RESEARCHERS

ISSN: 3030-332X Impact factor: 8,293

Volume 11, issue 2, May 2025

https://wordlyknowledge.uz/index.php/IJSR

worldly knowledge

Index:

google scholar, research gate, research bib, zenodo, open aire.

https://scholar.google.com/scholar?hl=ru&as_sdt=0%2C5&q=wosjournals.com&btnG

https://www.researchgate.net/profile/Worldly-Knowledge

https://journalseeker.researchbib.com/view/issn/3030-332X

125

QIDIRISH ALGORITMLARI

Abdullayev Shaxboz Solijon o‘g‘li

FarDU Axborot texnologiyalari kafedrasi katta o‘qituvchisi

shaxbozfardu2023@gmail.com

ORCID ID

0000-0001-9382-732X

Ismonaliyeva Dilbarxon Maxamadali qizi

Farg‘ona davlat universiteti Axborot tizimlari va texnologiyalari

yoʻnalishi I kurs talabasi

samsunredmi08@gmail.com

Annotatsiya:

Ushbu maqolada kompyuter fanining muhim yo‘nalishlaridan biri bo‘lgan qidirish

algoritmlari tahlil qilinadi. Qidirish algoritmlari — ma’lumotlar to‘plamida kerakli elementni

aniqlash uchun ishlatiladigan asosiy usullardir. Maqolada chiziqli (linear search), ikkilik (binary

search), shuningdek, graflarda qo‘llaniladigan kenglik bo‘yicha (BFS) va chuqurlik bo‘yicha

(DFS) qidirish kabi mashhur algoritmlar ko‘rib chiqiladi. Ularning ishlash prinsipi, samaradorlik

darajasi (kompleksligi), amaliy qo‘llanilishi hamda afzallik va kamchiliklari tahlil etiladi.

Mazkur maqola algoritmik fikrlashni rivojlantirish va dasturlashda samarali algoritmlarni tanlay

olish malakasini shakllantirishga qaratilgan.

Аннотатция:

В данной статье рассматриваются алгоритмы поиска, являющиеся важным

направлением в области информатики. Описаны линейный поиск, бинарный поиск, поиск

в ширину (BFS) и поиск в глубину (DFS), а также принципы их работы, эффективность и

практическое применение. Эти алгоритмы играют ключевую роль в развитии

алгоритмического мышления и эффективном программировании.

Annotation:

This article explores search algorithms, which are a fundamental area of computer

science. It examines linear search, binary search, breadth-first search (BFS), and depth-first

search (DFS) algorithms. Their operational principles, efficiency, and practical applications are

analyzed. These algorithms play a crucial role in developing algorithmic thinking and building

efficient software.

Kalit so‘zlar:

Qidirish algoritmlari, chiziqli qidiruv, ikkilik qidiruv, graflarda qidiruv, C++

dasturlash tili, algoritmik tahlil, vaqt va xotira murakkabligi, ma’lumotlar tuzilmasi.

Ключевые слова:

Алгоритмы поиска, линейный поиск, бинарный поиск, обход графов,

язык программирования C++, анализ алгоритмов, временная и пространственная

сложность, структуры данных.

Keywords:

Search algorithms, linear search, binary search, graph traversal, C++ programming

language, algorithm analysis, time and space complexity, data structures.


background image

INTERNATIONAL JOURNAL OF SCIENTIFIC RESEARCHERS

ISSN: 3030-332X Impact factor: 8,293

Volume 11, issue 2, May 2025

https://wordlyknowledge.uz/index.php/IJSR

worldly knowledge

Index:

google scholar, research gate, research bib, zenodo, open aire.

https://scholar.google.com/scholar?hl=ru&as_sdt=0%2C5&q=wosjournals.com&btnG

https://www.researchgate.net/profile/Worldly-Knowledge

https://journalseeker.researchbib.com/view/issn/3030-332X

126

Kirish

Zamonaviy axborot texnologiyalari va dasturlash sohasining tez rivojlanishi bilan bir

qatorda samarali va tezkor algoritmlarga bo‘lgan talab ham ortib bormoqda. Ayniqsa, katta

hajmdagi ma’lumotlar bilan ishlashda kerakli elementni aniqlash, tartiblash yoki izlash ehtiyoji

doimo dolzarb bo‘lib kelgan. Qidirish algoritmlari — bu kompyuter fanining muhim

yo‘nalishlaridan bo‘lib, ular ma’lumotlar tuzilmasida kerakli qiymatni topish vazifasini bajaradi.

Ushbu maqolada chiziqli, ikkilik, graflarda kenglik va chuqurlik bo‘yicha qidiruv

algoritmlarining ishlash prinsiplari, ularning samaradorlik darajasi hamda C++ dasturlash tili

asosida amaliy qo‘llanilishi tahlil qilinadi. Tadqiqot algoritmik tafakkurni shakllantirish va

optimal yechimlarni tanlash bo‘yicha bilimlarni chuqurlashtirishga xizmat qiladi.

Qidirish algoritmlarning nazariy asoslari

Qidirish algoritmlari ma'lumotlar to‘plamida kerakli elementni aniqlash uchun ishlatiladi.

Ular turli ma'lumotlar tuzilmalari (masalan, massivlar, ro‘yxatlar, daraxtlar, graflar va boshqalar)

bilan ishlashda keng qo‘llaniladi. Qidirish algoritmlarining samaradorligi va ishlash tezligi

algoritmning qanday ma'lumotlar tuzilmasi bilan ishlashiga, shuningdek, qidirish

operatsiyasining murakkabligiga bog‘liq bo‘ladi. Asosan, qidirish algoritmlari ikki asosiy turga

bo‘linadi: chiziqli qidiruv va ikkilik qidiruv.

1. Chiziqli qidiruv (Linear Search)

Chiziqli qidiruv algoritmi eng oddiy va sodda qidirish algoritmidir. U ma'lumotlar to‘plamini

boshidan oxirigacha tekshiradi va kerakli elementni topganida to‘xtaydi. Bu algoritm har bir

elementni tekshirishni o‘z ichiga oladi, shu sababli uning samaradorligi O(n) — ya'ni,

algoritmning ishlash vaqti ma'lumotlar to‘plamining hajmiga to‘g‘ri proporsionaldir. Chiziqli

qidiruv algoritmi kichik hajmdagi ma'lumotlar uchun yaxshi ishlaydi, ammo katta hajmdagi

ma'lumotlar bilan ishlashda uning samaradorligi pasayadi.

2. Ikkilik qidiruv (Binary Search)

Ikkilik qidiruv algoritmi faqat saralangan ma'lumotlar to‘plamida ishlaydi. Bu algoritm,

ma'lumotlar to‘plamining o‘rtasidagi elementni tekshiradi, agar kerakli qiymat undan kichik

bo‘lsa, qidiruvni chap yarmida, katta bo‘lsa, o‘ng yarmida davom ettiradi. Har bir qadamda

qidiruv maydoni yarmiga kamayadi, bu esa algoritmga O(log n) samaradorlikni ta'minlaydi.

Ikkilik qidiruv nisbatan tezkor va samarali hisoblanadi, lekin faqat saralangan ma'lumotlar bilan

ishlaganda ishlaydi.

3. Graflarda qidiruv algoritmlari (Graph Search Algorithms)

Graflarda qidirish algoritmlari murakkabroq tuzilmalarda ishlatiladi. Bu algoritmlar ikki asosiy

turga bo‘linadi:
Kenglik bo‘yicha qidiruv (Breadth-First Search, BFS): BFS algoritmi boshlang‘ich nuqtadan

boshlab, avval barcha qo‘shni tugunlarni tekshiradi, so‘ngra ularning qo‘shnilarini tekshiradi.

BFS algoritmi O(V + E) vaqt murakkabligiga ega, bu erda V — tugunlar soni, E — qirralar soni.


background image

INTERNATIONAL JOURNAL OF SCIENTIFIC RESEARCHERS

ISSN: 3030-332X Impact factor: 8,293

Volume 11, issue 2, May 2025

https://wordlyknowledge.uz/index.php/IJSR

worldly knowledge

Index:

google scholar, research gate, research bib, zenodo, open aire.

https://scholar.google.com/scholar?hl=ru&as_sdt=0%2C5&q=wosjournals.com&btnG

https://www.researchgate.net/profile/Worldly-Knowledge

https://journalseeker.researchbib.com/view/issn/3030-332X

127

Chuqurlik bo‘yicha qidiruv (Depth-First Search, DFS): DFS algoritmi boshlang‘ich tugundan

boshlab, iloji boricha chuqurroq qarab, keyin teskari qaytib, boshqa yo‘nalishlarni tekshiradi.

DFS algoritmi O(V + E) vaqt murakkabligiga ega.

4. Algoritmik samaradorlik va murakkablik

Qidirish algoritmlarining samaradorligi vaqt murakkabligi (time complexity) va xotira

murakkabligi (space complexity) bilan o‘lchanadi. Vaqt murakkabligi algoritmning qidiruvni

bajarish uchun qancha vaqt ketishini, xotira murakkabligi esa qidiruv jarayonida qancha xotira

sarflanishini o‘lchaydi.
Chiziqli qidiruv va BFS, DFS kabi algoritmlar O(n) yoki O(V + E) vaqt murakkabligiga ega

bo‘lsa, ikkilik qidiruv O(log n) samaradorlikni ta'minlaydi.
Xotira murakkabligi ko‘p hollarda algoritmning ishlash maydoni (stack yoki queue) va

ma'lumotlar tuzilmasiga bog‘liq bo‘ladi.

5. Amaliy qo‘llanishlar

Qidirish algoritmlari har xil sohalarda qo‘llaniladi. Masalan, ma'lumotlar bazalarida qidirish

operatsiyalarini tezlashtirishda, matematik modellarda optimallashtirishda, yaxshi ma'lumotlar

strukturalarida tezkor qidiruvni ta'minlashda keng qo‘llanadi. Shuningdek, grafda yo‘l qidirishda,

avtomatik tavsiyalar tizimlarida va boshqa ko‘plab sohalarda ham qo‘llaniladi.

Qidirish algoritmlarning qo‘llanilishi

Qidirish algoritmlari turli sohalarda, ayniqsa ma’lumotlarni qayta ishlash va axborot

texnologiyalarida keng qo‘llaniladi. Ushbu algoritmlar katta hajmdagi ma’lumotlar to‘plamida

samarali qidiruvni ta’minlash, foydalanuvchining so‘roviga javob berish, optimallashtirish va

ma’lumotlarni tartibga solishda asosiy vositalardan biridir. Quyida qidirish algoritmlarining eng

mashhur qo‘llanilish sohalari keltirilgan:

1. Ma’lumotlar bazalarida qidiruv

Ma’lumotlar bazalari — bu katta hajmdagi ma’lumotlarni saqlash, boshqarish va ulardan ma’lum

bir ma'lumotni olish uchun ishlatiladigan tizimlardir. Qidirish algoritmlari ma’lumotlar

bazalarida ma'lum bir rekordni tez va samarali topish uchun ishlatiladi. Binar qidiruv algoritmi

ko‘pincha ma'lumotlar bazasida saqlanadigan ma’lumotlar saralangan bo‘lganda qo‘llaniladi.

Chiziqli qidiruv esa, ko‘proq kichik hajmdagi yoki saralanmagan ma'lumotlar bilan ishlashda

samarali.

2. Web qidiruv tizimlari

Web qidiruv tizimlari (Google, Bing, va h.k.) katta hajmdagi ma'lumotlar bazasidan

foydalanuvchi so‘roviga javob topish uchun qidirish algoritmlarini ishlatadi. Bu tizimlar web

sahifalarni indekslash va foydalanuvchining so‘roviga eng mos bo‘lgan sahifalarni topish uchun

graflarda qidiruv algoritmlari (BFS, DFS) va ikkilik qidiruvni qo‘llaydi. PageRank algoritmi,

masalan, Google qidiruv tizimida sahifalarni tartiblashda muhim rol o‘ynaydi.

3. Matnli ma’lumotlar bilan ishlash

Matnli ma'lumotlar bilan ishlashda qidirish algoritmlari zarur. Misol uchun, full-text search

(to‘liq matn bo‘yicha qidiruv) algoritmlari matn fayllarida ma’lum so‘z yoki iboralarni topish

uchun qo‘llaniladi. Bunday algoritmlar chiziqli qidiruv yoki hashing texnikalari yordamida

matndagi ma'lumotlarni tezda aniqlashni ta’minlaydi.


background image

INTERNATIONAL JOURNAL OF SCIENTIFIC RESEARCHERS

ISSN: 3030-332X Impact factor: 8,293

Volume 11, issue 2, May 2025

https://wordlyknowledge.uz/index.php/IJSR

worldly knowledge

Index:

google scholar, research gate, research bib, zenodo, open aire.

https://scholar.google.com/scholar?hl=ru&as_sdt=0%2C5&q=wosjournals.com&btnG

https://www.researchgate.net/profile/Worldly-Knowledge

https://journalseeker.researchbib.com/view/issn/3030-332X

128

4. Grafda yo‘l qidirish

Graf tuzilmalari ko‘p hollarda kompleks tizimlarni tasvirlash uchun ishlatiladi, masalan,

transport tizimlari, ijtimoiy tarmoqlar va h.k. Qidirish algoritmlari graflarda yo‘l qidirishda

qo‘llaniladi. BFS va DFS algoritmlari graflarda yo‘l qidirishda asosiy vositalardan hisoblanadi.

Masalan, BFS algoritmi eng qisqa yo‘lni topish uchun ishlatiladi (masalan, Google Maps va

boshqa navigatsiya tizimlarida).

5. E-commerce va tavsiya tizimlarida

Onlayn savdo va tavsiya tizimlarida foydalanuvchilarga tegishli mahsulotlarni tavsiya qilish

uchun qidirish algoritmlari qo‘llaniladi. Kollaborativ filtratsiya algoritmlarini ishlatib,

foydalanuvchining o‘zbeklariga o‘xshash boshqa foydalanuvchilarning qiziqishlariga asoslanib

tavsiyalar beriladi. Ushbu algoritmlar, ayniqsa, onlayn savdo saytlarida, video va musiqa

striming xizmatlarida ishlatiladi.

6. Dasturiy ta’minot va kod qidiruvi

Dasturlashda, ayniqsa kodni optimallashtirish va refaktoring qilishda qidirish algoritmlari

ishlatiladi. Dasturchilar uchun IDE (Integrated Development Environment) tizimlarida, masalan,

code search (kod qidiruvi) imkoniyatlari mavjud. Bu algoritmlar yordamida dasturchilar o‘z

kodlarida kerakli funksiyalar, o‘zgaruvchilar yoki metodlarni tezda topishlari mumkin. Bu

algoritmlar asosan hashing, suffix arrays yoki trie tuzilmalari asosida ishlaydi.

7. Sog‘liqni saqlash tizimlarida qidiruv

Sog‘liqni saqlash tizimlarida bemorlar haqidagi ma'lumotlarni qidirish uchun algoritmlar

ishlatiladi. Masalan, electronic health records (EHR) tizimlarida bemorlar tarixini qidirishda,

maxsus kodlarni aniqlashda va analiz qilishda qidirish algoritmlari qo‘llanadi. Bu tizimlar turli

xil tahliliy va diagnostik ma’lumotlarni tezda topish uchun samarali qidirish algoritmlariga

muhtoj.

Xulosa

Qidirish algoritmlari nafaqat ma'lumotlar tuzilmalarini boshqarish va ma'lumotlarni tezkor

topishda, balki zamonaviy texnologiyalarni rivojlantirishda ham ajralmas vosita hisoblanadi.

Ularning samaradorligi va muhim ahamiyati, har bir sohada qo‘llanilishi bilan sezilarli darajada

oshmoqda. Qidirish algoritmlarining to‘g‘ri tanlanishi va optimallashtirilishi, ayniqsa, katta

hajmdagi ma’lumotlar bilan ishlashda tizimlar samaradorligini oshiradi.

Ma'lumotlar bazalarida qidirish algoritmlari foydalanuvchilarga zarur ma'lumotni tezda olish

imkoniyatini yaratadi. Bu, o‘z navbatida, web qidiruv tizimlarida (masalan, Google, Bing) ham,

foydalanuvchining so‘rovlariga to‘g‘ri javoblarni tezda topish imkoniyatini ta’minlaydi. Chiziqli

qidiruv, ikkilik qidiruv va graf qidiruv algoritmlari kabi oddiy algoritmlardan tortib, ilg‘or

texnikalarga, masalan, PageRank algoritmiga qadar keng qo‘llanilishi, bu tizimlarning

mustahkam ishlashini kafolatlaydi.

Matnli ma'lumotlar bilan ishlashda, full-text search algoritmlari qidiruv samaradorligini

ta’minlab, foydalanuvchilarga o‘zgacha foydali ma'lumotlarni taklif etadi. Shu bilan birga, graf

qidiruv algoritmlari nafaqat ijtimoiy tarmoqlarda, balki murakkab tizimlarda, masalan, transport

tarmog‘idagi yo‘l qidirish va boshqa ko‘plab sohalarda muvaffaqiyatli qo‘llaniladi.

E-commerce va tavsiyalar tizimida algoritmlar foydalanuvchilarga o‘ziga xos mahsulotlarni

tavsiya qilish uchun qo‘llaniladi, bu esa onlayn savdo va xizmatlarning samaradorligini oshiradi.

Mashina o‘rganish va sun'iy intellekt texnologiyalarida esa qidirish algoritmlari ma'lumotlarni

aniqlash, tasniflash va prognozlashda ishlatiladi, bu sohaning yanada rivojlanishiga imkon


background image

INTERNATIONAL JOURNAL OF SCIENTIFIC RESEARCHERS

ISSN: 3030-332X Impact factor: 8,293

Volume 11, issue 2, May 2025

https://wordlyknowledge.uz/index.php/IJSR

worldly knowledge

Index:

google scholar, research gate, research bib, zenodo, open aire.

https://scholar.google.com/scholar?hl=ru&as_sdt=0%2C5&q=wosjournals.com&btnG

https://www.researchgate.net/profile/Worldly-Knowledge

https://journalseeker.researchbib.com/view/issn/3030-332X

129

yaratadi. KNN (K-Nearest Neighbors) va Decision Trees kabi algoritmlar, qidiruvga asoslangan

texnologiyalarni yanada kuchaytiradi.

Shuningdek, sog‘liqni saqlash tizimlarida qidirish algoritmlari bemorlar haqidagi muhim tahliliy

ma'lumotlarni tezda topish imkonini beradi. Genetik tahlillar va biotexnologiya sohasida ham

qidirish algoritmlaridan foydalanish orqali o‘xshash genetik kodlarni aniqlash va tahlil qilish

ishlari amalga oshiriladi.

Kengaytirilgan ma'lumotlar tuzilmalari va algoritmlar orqali samarali qidiruv imkoniyatlari

ta’minlanadi, bu esa texnologiyalarning rivojlanishiga yordam beradi. Hashing va dynamic

programming kabi ilg‘or metodlar yordamida qidiruv tizimlari yanada samarali ishlaydi.

Qidirish algoritmlarining vaqt murakkabligi va xotira murakkabligini optimallashtirish,

tizimlarning samaradorligini yanada oshiradi. Shu bilan birga, ular ishlash tezligini oshirish

orqali real vaqt rejimida tezkor javoblarni ta’minlaydi. Bularning barchasi, nafaqat qidirish

jarayonini, balki tizimning umumiy ishlash samaradorligini ham yaxshilaydi.

Xulosa qilib aytganda, qidirish algoritmlari turli sohalarda qo‘llanilishining afzalliklari

ulkan. Ular faqat ma'lumotlarni topishda emas, balki ma'lumotlarni tahlil qilish, saqlash va qayta

ishlashda ham muhim rol o‘ynaydi. Tez va samarali qidirish algoritmlarini ishlab chiqish va

qo‘llash, zamonaviy dasturiy ta’minot va tizimlarning rivojlanishining ajralmas qismiga

aylanmoqda. Yangi texnologiyalarni yaratishda, algoritmlarni optimallashtirish va ularni

mukammallashtirishga qaratilgan tadqiqotlar, nafaqat akademik dunyoda, balki sanoat sohalarida

ham muhim o‘rin tutadi

Foydalanilgan adabiyotlar:

1. Абрамов С.М. Алгоритмы: построение и анализ. — Москва: БХВ-Петербург, 2003.

2. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. Introduction to Algorithms. —

MIT Press, 2009.

3. Lafore, R. Object-Oriented Programming in C++. — Sams Publishing, 2002.

4. Шайхулов Д.Ш. Algoritmlarni loyihalash va tahlil qilish. — Toshkent: TATU nashriyoti,

2019.

5. Malik, D. S. C++ Programming: Program Design Including Data Structures. — Cengage

Learning, 2017.

6. Cormen, T. H., Leiserson, C. E., Rivest, R. L., Stein, C.

Introduction to Algorithms (3rd Edition), The MIT Press, 2009.

7. Knuth, D. E.

8. The Art of Computer Programming, Volume 1-4, Addison-Wesley, 1997.

9. Sedgewick, R., Wayne, K.

10. Algorithms (4th Edition), Addison-Wesley, 2011.

Библиографические ссылки

Абрамов С.М. Алгоритмы: построение и анализ. — Москва: БХВ-Петербург, 2003.

Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. Introduction to Algorithms. — MIT Press, 2009.

Lafore, R. Object-Oriented Programming in C++. — Sams Publishing, 2002.

Шайхулов Д.Ш. Algoritmlarni loyihalash va tahlil qilish. — Toshkent: TATU nashriyoti, 2019.

Malik, D. S. C++ Programming: Program Design Including Data Structures. — Cengage Learning, 2017.

Cormen, T. H., Leiserson, C. E., Rivest, R. L., Stein, C.

Introduction to Algorithms (3rd Edition), The MIT Press, 2009.

Knuth, D. E.

The Art of Computer Programming, Volume 1-4, Addison-Wesley, 1997.

Sedgewick, R., Wayne, K.

Algorithms (4th Edition), Addison-Wesley, 2011.