Qarshi davlat universiteti international scientific and practical conference on algorithms and current problems of programming




Download 15,84 Mb.
Pdf ko'rish
bet128/551
Sana15.05.2024
Hajmi15,84 Mb.
#234763
1   ...   124   125   126   127   128   129   130   131   ...   551
Bog'liq
Asosiy oxirgi 17.05.2023 18.20

Ключевые слова:
поиск элемента массива, ключевое значение, бинарный 
алгоритм поиска, серединный элемент, подмассив. 
Kalit so‘zlar:
massiv elementini qidirish, kalit qiymat, binar qidiruv algoritmi, o‘rta 
element, kichik massiv. 
Key words:
array element search, key value, binary search algorithm, middle element, 
subarray. 
Алгоритмы поиска являются часто применяемыми алгоритмами обработки 
структурированных данных. Задачу поиска можно сформулировать следующим 
образом: найти один или несколько элементов во множестве, обладающие 
определённым свойством. При решении задачи поиска выполняются следующие 
этапы: 1) задание свойства искомого элемента, например, задание значения 
искомого элемента, которое является ключом поиска; 2) сравнение свойства 
рассматриваемого, текущего элемента множества с заданным свойством искомого 
элемента, с ключом; 3) перебор элементов множества, то есть прохождение по 
элементам множества. Методы поиска и алгоритмы их реализации различаются 
между собой в основном стратегией поиска. Одним из алгоритмов поиска является 
бинарный алгоритм, который основан на методе деления заданного множества 
элементов пополам, то есть на две части. Бинарный алгоритм применим к 
отсортированному множеству элементов a
1
< a
2
< a
3
<…< a
n
. Суть бинарного 
алгоритма заключается в том, что поиск искомого элемента начинается со 
серединного элемента множества, то есть со сравнения свойства серединного 
элемента с заданным ключом. Серединный же элемент множества определяется 
путём деления множества на две части. При сравнении значения серединного 


160 
элемента отсортированного списка с заданным ключевым значением возможен 
один из следующих трёх случаев: 1) значение серединного элемента равно 
заданному ключевому значению; 2) значение серединного элемента меньше 
заданного ключевого значения; 3) значение серединного элемента больше 
заданного ключевого значения; Первый случай является наилучшим, и задача 
поиска решена: серединный элемент является искомым элементом. Во втором 
случае становится ясным, что искомый элемент, если он имеется в списке, находится 
до рассматриваемого серединного элемента, дальнейший поиск необходимо 
осуществлять в половине списка, расположенной до серединного элемента. Вторая 
же половина списка, расположенная после серединного элемента. исключается из 
дальнейшего рассмотрения, так как в ней не содержится искомый элемент. В 
третьем случае искомый элемент может находиться после рассматриваемого 
серединного элемента и дальнейший поиск необходимо осуществлять в половине 
списка, расположенной после серединного элемента. Другая же половина списка, 
расположенная до серединного элемента. исключается из дальнейшего 
рассмотрения, так как в ней не содержится искомый элемент. 
Рассмотрим пример практической реализации бинарного алгоритма поиска 
элемента одномерного массива с заданным значением. Пусть задан упорядоченный 
массив A[9]={6,12,18,42,44,56,67,94,100} (1) 
и требуется определить элемент с заданным значением 56 (key=56 - ключ). 
Индекс элемента A[0]=6, являющегося левым граничным элементом массива, равен 
0 (l=0, left – левый). Индекс элемента A[8]=100, являющегося правым граничным 
элементом массива, равен 8 (r=8, right – правый). Серединным элементом массива 
(1) является элемент A[4]=44 с индексом 4 (mid= (l+r)/2= (0+8)/2=4, middle – 
середина), назовём его явным серединным элементом. Используя серединный 
элемент A[mid]=A[4]=44, массив (2) можно расписать в виде A[9]={6, 12, 18, 42} {44} { 
56, 67, 94, 100}. (2) 
Так как 44<56, искомый элемент будем искать в подмассиве элементов, 
находящихся после серединного элемента A[4]=44, а именно в подмассиве V
1
={56, 67, 
94, 100}, а серединный элемент A[4]=44 и подмассив V
2
={6, 12, 18, 42} элементов, 
расположенных в исходном массиве (1) до него, исключаем из рассмотрения. 
Подмассив V
1
={56, 67, 94, 100}, в котором может находиться искомый элемент, 
Download 15,84 Mb.
1   ...   124   125   126   127   128   129   130   131   ...   551




Download 15,84 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



Qarshi davlat universiteti international scientific and practical conference on algorithms and current problems of programming

Download 15,84 Mb.
Pdf ko'rish