Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Жека_96
0 / 0 / 0
Регистрация: 22.06.2014
Сообщений: 2
#1

Интерполяционный поиск - C++

22.06.2014, 14:51. Просмотров 507. Ответов 2
Метки нет (Все метки)

Через два дня экзамен и нужно прогу сдать. Помогите пожалуйста.
Вот функция. Она должна работать так: создаёт большой массив, затем берёт сначала первые 50 элементов, и вычисляет оценку эффективности(число сравнений) и записывает в массив эту оценку, чтобы далее построить график, затем берёт 100,150 и т.д. элементов. Ошибка "Project Project1.exe raised exception class EAcceessViolation with message 'Access violation at address 00403195 in module 'Project1.exe'. Read of address 00187020'. Process stopped. Use Step or Run to continue." на строке 22. Заранее спасибо, буду благодарен

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
27
28
29
30
void Sort::func()
{int sr=0, i, j, m, K, nn=1000, p[1000], L, R,N;
  lsd = new int[10];
  krk = new int[10];
  float w;
   randomize();
   p[0] = 1;
  for(int i=1; i<nn; i++)
    p[i]=p[i-1] + random(20) + 1;
  N=0;
  for(j=1;j<nn;j++)
  {N=N+50;
  krk[j-1]=N;
  for(m=0; m<N; m++) // Поиск всех ключей
  {  sr++;
     K=p[m]; // искомый ключ
     L=0; R=N-1;
   while( R >= L )
        { sr++;
          if(p[L]==p[R]) break;
          i = L + (((R - L)*(K - p[L])) / (p[R] - p[L]));
          if( K < p[i] ) R = i - 1;
      else if( K > p[i] ) L=i+1;
        else break;
        }
  }
K= sr/nn;
  lsd[j-1]=K;
    }
}
Добавлено через 2 часа 35 минут
Помогите пожалуйста, очень надо! Если всё заработает, то отблагодарю денежно.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2014, 14:51     Интерполяционный поиск
Посмотрите здесь:

Интерполяционный поиск - C++
int p_dv(TSsot c) { int i=0, j=nst-1, m; while(i&lt;j) { if (c==c) if (c==x) return i; else return...

Интерполяционный поиск - C++
Напишите плиз реализацию данного поискать. Сорри если что за повтор темы

Бинарный и интерполяционный поиск - C++
Бинарный и интерполяционный поиск реализовать надо в одной программе помогите,плиз

Интерполяционный следящий поиск - C++
Привет ребят. Такая просьба: может кто делал когда-либо реализацию интерп.следящего поиска в массиве чисел, у кого есть скиньте...

Дихотомия и интерполяционный поиск по отсортированному массиву - C++
Естьчо в типовых/стандартных библиотеках для C или в STL? Спасибо

Построить интерполяционный многочлен и интерполяционный сплайн - C++
Здравствуйте, уважаемые. Даны узлы и значения функции в них. Картинка во вложении. Нужно построить интерполяционный многочлен(Лагранжа...

Интерполяционный полином Лагранжа - C++
Привет всем! ;)Такой вопрос, имею лабораториум по програмированию и получил несколько заданий, это одно из них, хотел би услишать может...

Интерполяционный многочлен Лагранжа - C++
Уважаемый форум...помогите пожалуйста полином Лагранжа задан 10 точками...как его вывести в форме многочлена то-есть x^4-2x^2...(пример)и...

Интерполяционный полином Лагранжа - C++
Помогите пожалуйста есть программа когда нужно по заданному х=4 найти у Теперь мне нужно сделать наоборот есть у=0.5 найти все значения х...

Интерполяционный многочлен Лагранжа - C++
Здравствуйте, уважаемые, обшарил форум, но решения проблемы не нашел. Потратил часа 2, но так и не смог до конца разобраться. Задание:...

Интерполяционный многочлен Ньютона - C++
По табличной функции, заданной 10-ю точками, построить мн-член Ньютона с конечными разностями. Моя программа: #include &lt;stdio.h&gt; ...

Интерполяционный многочлен Лагранжа - C++
не поможете построить график интерполяционного многочлена Лагранжа для функции f(x)=sin(pi x) при числе узлов n=3,5,25 узлы равномерно...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6282 / 5885 / 1905
Регистрация: 18.12.2011
Сообщений: 15,094
Завершенные тесты: 1
22.06.2014, 16:42     Интерполяционный поиск #2
Цитата Сообщение от Жека_96 Посмотреть сообщение
for(j=1;j<nn;j++)
{
N=N+50;
krk[j-1]=N;
krk у Вас длиной 10, а nn равно 1000.
Аналогично и lsd
Жека_96
0 / 0 / 0
Регистрация: 22.06.2014
Сообщений: 2
29.06.2014, 14:05  [ТС]     Интерполяционный поиск #3
Не помогло, препод сам не смог найти ошибку и простил:-)
Yandex
Объявления
29.06.2014, 14:05     Интерполяционный поиск
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru