kosim
1

Что означает двоичный поиск?Как определить позицию, где в этот массив можно вставить число x

07.12.2014, 23:10. Показов 2304. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите решить эту задачу "Элементы массива не убывают. Двоичным поиском определить позицию, где в этот массив можно вставить данное число x."
буду благодарен
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.12.2014, 23:10
Ответы с готовыми решениями:

Что означает этот фрагмент кода и как его можно применить?
Что означает этот фрагмент кода и как его можно применить? Как можно использовать следующий класс?...

Ввести одномерные массивы , . Определить новый вектор-массив как: , где знак «*» означает, что все компоненты этого вектора получены из исходного путё
Ввести одномерные массивы , . Определить новый вектор-массив как: , где знак «*» означает, что все...

Дан массив A (n),из целых чисел, и натуральное число k (0 < k ? n). Требуются вставить заданное число m b k-ую позицию массива.
Дан массив A (n),из целых чисел, и натуральное число k (0 &lt; k ? n). Требуются вставить заданное...

Упорядочить массив по возрастанию,вставить в этот массив число так,чтобы он остался возрастающим.
Дан массив и какое-то число. Упорядочить массив по возрастанию,вставить в этот массив число...

1
91 / 74 / 81
Регистрация: 07.12.2014
Сообщений: 303
08.12.2014, 13:38 2
Лучший ответ Сообщение было отмечено как решение

Решение

https://ru.wikipedia.org/wiki/... 1%81%D0%BA
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
using namespace std;
int p_dv(int a[], int  n, int x)
{
    int i = 0, j = n - 1, m;
    while (i<j)
    {
        m = (i + j) / 2;
        if (x > a[m])
            i = m + 1;
        else j = m;
    }
    cout << i << endl;
    if (a[i-1] <= x && a[i+1] >= x) return i;
    else return -1;
}
 
 
 
void main()
{
    int mas[10] = { 0, 1, 2, 4, 5, 6, 7, 8, 9, 10 }, x = 3;
    int poz = p_dv(mas, 10, x);
    cout << poz << endl;
    system("pause");
}
0
08.12.2014, 13:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.12.2014, 13:38
Помогаю со студенческими работами здесь

Где можно увидеть что означает код ошибки?
Может есть сайт или документация? Visual prolog PROGRAM ERROR. 1601

как узнать что этот код означает ?
Здравствуйте , Есть HTML код в ней присутсвует некий &lt;div id=&quot;projectsContent&quot;...

Как прочитать этот код? Что он означает?
Всем привет! Только спецы могут понять чего это означает. Предистория: делал фрилансер но не...

Как работает этот кода и что означает оператор '?'
объясните, пожалуйста на словах как работает этот код. Заранее спасибо $line = 'Student, hello!';...

Вставить в строку H в позицию J подстроку T , а в позицию Y число X
Вставать в строку H в позицию J подстроку T , а в позицию Y число X. Вывести на экран символьную...

Используя двоичный поиск, определить есть ли в массиве равное число
заполнить массив случайными числами и отсортировать его ввести число x использовать двоичный поиск...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru