Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

10.01.2010, 13:17
|
|
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
Провел на форуме: 4205500
Репутация:
930
|
|
охохох вот он ваш php
|
|
|

10.01.2010, 13:48
|
|
Участник форума
Регистрация: 07.01.2009
Сообщений: 237
Провел на форуме: 745649
Репутация:
97
|
|
Ещё раз советую Б. Страуструпа )))
|
|
|

10.01.2010, 14:30
|
|
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме: 1180737
Репутация:
180
|
|
пытаюсь сделать алгоритм бинарного поиска, но такой чтобы при входе:
A - массив, p - индекс первого элемента, r - индекс последнего элемента, число x,
На выходе получить не позицию элемента равного х, а позицию элемента q удовлетворяющего условию A[q-1] < x <= A[q].
Ну и собсно путаюсь, и не как немогу ничего вразумительного сделать.
Ps. именно по принцыпу бинарного поиска.
|
|
|

10.01.2010, 14:56
|
|
Banned
Регистрация: 14.01.2009
Сообщений: 515
Провел на форуме: 1996429
Репутация:
468
|
|
Да мне не лень компилить,пока прост нету возможности компилить.
|
|
|

10.01.2010, 15:10
|
|
Участник форума
Регистрация: 07.01.2009
Сообщений: 237
Провел на форуме: 745649
Репутация:
97
|
|
Сообщение от cupper
пытаюсь сделать алгоритм бинарного поиска, но такой чтобы при входе:
A - массив, p - индекс первого элемента, r - индекс последнего элемента, число x,
На выходе получить не позицию элемента равного х, а позицию элемента q удовлетворяющего условию A[q-1] < x <= A[q].
Ну и собсно путаюсь, и не как немогу ничего вразумительного сделать.
Ps. именно по принцыпу бинарного поиска.
Исходник в студию )
|
|
|

10.01.2010, 16:13
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме: 1354067
Репутация:
599
|
|
Да мне не лень компилить,пока прост нету возможности компилить.
Тогда ты долго будешь учить с++. Обычный алгоритм таков - читаешь главу, делаешь программу согласно главе, дебажишь до понимания. Потом начинаешь менять этот исходник чтобы понять вариации изменения кода и поведения. И так тестишь пока есть вопросы. Потом берешь и читаешь следующую главу.
Я сам не так давно таким образом с Qt возился. Книжка без практики, так же как и практика без книжки - пустая трата времени.
|
|
|

10.01.2010, 18:21
|
|
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме: 1180737
Репутация:
180
|
|
Сообщение от herfleisch
Исходник в студию )
какие исходники, я даже алгоритм не могу продумать. Я сосбно и просил помочь именно с составлением алгоритма
|
|
|

10.01.2010, 18:54
|
|
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
Провел на форуме: 4205500
Репутация:
930
|
|
Не очень понятно причем тут бинарный поиск. Массив из случайных чисел или упорядоченный?
|
|
|

10.01.2010, 19:13
|
|
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме: 1180737
Репутация:
180
|
|
ну бинарный поиск работает только при упорядоченном массиве, после прогулки на улице, написал вот это
Код:
int bin_find_mm(int *, int, int ,int, int);
/*
* Рекурсивная функция поиска позиции q, такой что
* A[q-1] < x < A[q]
* возвращает q
*/
int main(){
int mas[7]={1,4,6,7,10,16,23};
cout<<bin_find_mm(mas, 0, 6, 24, 7)<<endl;
}
int bin_find_mm(int *A, int p, int r, int x, int minq){
int temp = minq;
if (p <= r){
int q = (p+r)/2;
if (x < A[q])
temp = bin_find_mm(A, p, q-1, x, q);
else if (x > A[q])
temp = bin_find_mm(A, q+1, r, x, minq);
else
return q;
}
if (temp < minq)
return temp;
else
return minq;
}
проверил несколько раз, на листочке посчитал ручками, вроде работает. Может можно лучше сделать ?
|
|
|

10.01.2010, 21:35
|
|
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме: 1180737
Репутация:
180
|
|
И еще, как время в милисекундах получать, чтобы можно было засекать время работы функций
делаю так
Код:
int timeBeg = time(NULL);
....
int totalTime = time(NULL) - timeBeg;
cout<<"total time to sort = "<<totalTime<<endl;
но секунда величина очень большая %)
PS. кодю в лине, WinAPI нету.
PPS. проблема решена
Код:
#include <ctime>
...
clock_t t0 = clock();
//что-нить делаем
clock_t t1 = clock();
cout << "time: " << (double)(t1 - t0) / CLOCKS_PER_SEC << endl;
Последний раз редактировалось cupper; 10.01.2010 в 21:43..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|