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

Алгоритм Райта - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ allocator своя версия http://www.cyberforum.ru/cpp-beginners/thread888394.html
Доброго времени суток. Мне нужно написать class allocator на подобии стандартного. Он должен содержать следующие методы: Method void* allocate (size_t n) Default: returns malloc (n*sizeof(T)) Method void deallocate (void* pointer) Default: free(pointer) Method void construct ( void* p, const T& value) new(p) T(value); Method void destroy (T* p) p->~T();
C++ Объявление и инициализация динамической матрицы Ребят, только начал разбираться с матрицой. примерно я знаю как написать матрицу, но не знаю как написать динамическую матрицу, и чтоб размеры матрицы вводилось с клавиатуры. помогите написать http://www.cyberforum.ru/cpp-beginners/thread888391.html
Dev-C++ не компилирует программу C++
Dev-C++ перестал компилировать код C++ я пробовал скомпилировать код из книги "C++ для чайников": // // Program to convert temperature from Celsius degree // units into Fahrenheit degree units: // Fahrenheit = Celsius * (212 - 32)/100 + 32 // #include <cstdio>
C++ Создание собственных процедур и функций
Создание собственных процедур и функций. Написать функцию для расчета математической формулы, согласно варианту и процедуры для ввода и вывода данных Файл с значениями вложил...помогите пожалуйста
C++ Удаление элемента со списка http://www.cyberforum.ru/cpp-beginners/thread888362.html
Вот у меня есть код: #include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; struct OS { char Name ; int Roz; int Op; };
C++ Почему не работает счетчик в функции? я написал вот такую не хитрую функцию , в ней все работает как надо,кроме переменной "V" - в чем проблема?(rm и lm это сокращенный код (GetAsyncKeyState(VK_(L\R)BUTTON)&1) void RetCoord (int X , int Y , int X1 , int Y1 , int V , char pString,D3DCOLOR col , D3DCOLOR col2) { GetCursorPos(&cPos); if(V==0) { if (rm&1&cPos.x>X &cPos.x<X1&cPos.y>Y... подробнее

Показать сообщение отдельно
kostya990
0 / 0 / 0
Регистрация: 15.05.2013
Сообщений: 12
02.06.2013, 21:49  [ТС]     Алгоритм Райта
Нет алгоритм Райта - алгоритм поиска в символьной строке.

Добавлено через 23 минуты
Я нашел кое что. Алгоритм Райта - это алгоритм поиска в символьной строке. Эмпирический алгоритм, оптимизированный под английские тексты. Сравнивает последний символ, потом первый, потом средний, потом все остальные; при несовпадении — сдвиг по Хорспулу. Сдвиг по Хорспулу это грубо говоря таблица в которой заранее определено на сколько символов сдвигать наш, сравниваемый шабло, для каждого символа. Вот код. Я только не могу понть какое значение имеет ASIZE.
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
31
32
33
34
#include<iostream>  
#include <string>
using namespace std;
 
  void preBmBc(char *x, int m, int bmBc[]) {
   int i;
 
   for (i = 0; i < ASIZE; ++i)
      bmBc[i] = m;
   for (i = 0; i < m - 1; ++i)
      bmBc[x[i]] = m - i - 1;
}
void RAITA(char *x, int m, char *y, int n) {
   int j, bmBc[ASIZE];
   char c, firstCh, *secondCh, middleCh, lastCh;
 
   /* Preprocessing */
   preBmBc(x, m, bmBc);
   firstCh = x[0];
   secondCh = x + 1;
   middleCh = x[m/2];
   lastCh = x[m - 1];
 
   /* Searching */
   j = 0;
   while (j <= n - m) {
      c = y[j + m - 1];
      if (lastCh == c && middleCh == y[j + m/2] &&
          firstCh == y[j] &&
          memcmp(secondCh, y + j + 1, m - 2) == 0)
         OUTPUT(j);
      j += bmBc[c];
   }
}
 
Текущее время: 22:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru