Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
moya_praktika_1_kurs.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
125.44 Кб
Скачать

Int chislo;//переменная для хранения числа

int a=1;//переменная счетчик

//сообщение пользователю//

cout<<"Lineyniy poisk"<<endl;

cout<<"Vvedite chislo:"<<endl;

cin>>chislo;

//цикл перебора всех елементов//

for(int y=0;y<nsize;y++)

{

if(pSize[y]==chislo)//если текуший елемент равен числу

{

cout<<"rezultat:"<<chislo<<endl;//вывод результата

break;//выход из цикла

}

else

a++;//инкриментирование переменной на один

}

if(a==nsize+1)//если такого числа не найдено

cout<<"Znachenie ne naydeno"<<endl;//вывод сообщения

else//если есть

cout<<"Kolichestvo chagov:"<<a<<endl;//вывод кол-ва шагов

/////////////////////////////////////////////////////////////////

////////////двоичный поиск////////////////////////////////////

int d=0;//счетчик шагов

int j2=nsize-1;//левая граница

int i2=0; //правая граница

Int h;//вводимое число

int k1=0;

cout<<"Dvoicniy poisk"<<endl;

cout<<"Vvedite chislo"<<endl;

cin>>h;

while(1)

{

if((pSize[i2]==h) || (pSize[j2]==h))//если число равно ел-ту справа или слева

{

k1++;//инкриминтирование переменной

break;//выход из цыкла

}

d++;//инкриминтирование переменной

i2++;//инкриминтирование переменной

if(i2==j2)//если левая граница равна правой

break;//выход из цикла

j2--;//дикриминтирование переменной

if(i2==j2)//если опять

break;//выход из цикла

}

///////////сообщения пользователю///////////////////

cout<<"Rezultat poiska:"<<endl;

cout<<"kolichestvo shagov:"<<++d<<endl;

cout<<"Bistraya sortirovka"<<endl;

quickSortR<int>(pSize,nsize-1);//вызов функции быстрой сортировки

///////////вывод на экран массива////////////////////

for(i=0;i<nsize;i++)

{

cout<<pSize[i]<<" "<<flush;

}

cout<<endl;

}

Вывод:

При работе с массивами или просто с какой-либо совокупностью данных часто необходимо их упорядочивать или находить какое-то значение. Для упорядочивания данных существуют различные методы. Например: метод Шелла, метод пузырька, выборки, вставки, выборки и вставки, а также метод Быстрой сортировки. Он является самым эффективным и быстрым методом для сортирования данных. Для поиска элементов существуют два метода: двоичный поиск, и линейный. Двоичный является более эффективным т.к при его использовании затрачивается меньше шагов для поиска и по этому он является более быстрым и удобным в отличии от линейного поиска.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]