Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Курсовая работа1 / Bin / Tests / BSQS
.C// binary search and quick sort demo
void QuickSort(int Arr[], int L, int R)
{
int i;
int j;
int p;
int t;
do {
i = L;
j = R;
p = Arr[(L + R) >> 1];
do {
while (Arr[i] < p)
i++;
while (Arr[j] > p)
j--;
if (i <= j) {
t = Arr[i];
Arr[i] = Arr[j];
Arr[j] = t;
i++;
j--;
}
} while (i <= j);
if (L < j)
QuickSort(Arr, L, j);
L = i;
} while (i < R);
}
int Find(int arr[], int count, int value)
{
int l, r, c = 0;
l = 0;
r = count - 1;
while (l <= r)
{
c = (l + r) >> 1;
if (arr[c] < value)
l = c + 1;
else if (arr[c] > value)
r = c - 1;
else
return c;
}
return count + 1;
}
int main()
{
int a[100];
int i;
for (i = 0; i < 100; i++)
a[i] = 101 - i;
QuickSort(&a, 0, 99);
putn(Find(&a, 100, 3));
}
Соседние файлы в папке Tests