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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
unbelievable
0 / 0 / 0
Регистрация: 01.01.2011
Сообщений: 79
#1

Алгоритм шинглов - сравнить тексты по методу шинглов - C++

14.04.2012, 00:08. Просмотров 1229. Ответов 0
Метки нет (Все метки)

Нужно сравнить тексты по методу шинглов. Теория по этому методу тут: http://www.codeisart.ru/python-shingles-algorithm/

Мне пока удалось сделать канонизацию текста. Дальше нужно разбить текст на шинглы, найти контрольные суммы и найти одинаковые подпоследовательности. Вот наработки (мало, но что имею)

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream>
 
#include <string>
using namespace std;
 
int main()
{
 
    string stopwords[5];
    string stopsymbols[5];
    string s = "Or me, or you- and; me:";
    int len = s.length();
 
 
 
 
 
    stopwords[0] = "and";
    stopwords[1] = "or";
    stopwords[2] = "no";
    stopwords[3] = "not";
    stopwords[4] = "if";
 
    stopsymbols[0] = ".";
    stopsymbols[1] = ",";
    stopsymbols[2] = "-";
    stopsymbols[3] = ";";
    stopsymbols[4] = ":";
 
 
 
for(int i = 0; i < 5; i++)
    {
        int pos = 0;
        while((pos = s.find(stopwords[i], pos)) != s.npos)
        {
            s.erase(pos, stopwords[i].size());
        }
    }
 
        for(int i = 0; i < 5; i++)
    {
        int pos = 0;
        while((pos = s.find(stopsymbols[i], pos)) != s.npos)
        {
            s.erase(pos, stopsymbols[i].size());
        }
    }
        cout << "canonize string " << s << endl;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2012, 00:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритм шинглов - сравнить тексты по методу шинглов (C++):

Дан алгоритм нахождения обратной матрицы. По нему хочу написать код. Но непонятно по какому методу он работает. - C++
Сам алгоритм: (Вложенный файл) Помогите пожалуйста разобраться по какому алгебраическому методу он работает. Не могу понять где...

Как ускорить алгоритм шинглов? - PHP БД
Итак есть алгоритм шинглов для сравнения двух текстов на похожесть. Реализация была найдена в инете и спасибо ее автору. Вот ее код: &lt;? ...

Перевести код алгоритма шинглов из PHP в Delphi - PHP
Добрый день! Прошу помочь перевести код из PHP в Delphi. Кому не сложно, очень прошу! Это не для лабы, для диплома. Просто нужен код на...

Найти данные по методу половинного деления, интерполяции и методу Симпсона - C#
Помогите найти данные по методу половинного деления, интерполяции и методу Симпсона.

Дифференциальное уравнение по методу Бернулли или методу Лагранжа - Дифференциальные уравнения
(2x-y^2)y'=2y Вообще не могу решить, получаются трехэтажные дроби( Подскажите кто-нибудь, как решать?

Интегрирование по методу Симпсона и методу трапеций - VBA
По учебе написала на excel + VBA программу, считающую интеграл по методу Симпсона и методу трапеций. Все считает хорошо. Те функции,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2012, 00:08
Привет! Вот еще темы с ответами:

Тексты - Pascal
Дан текст; выяснить, является ли этот текст: десятичной записью целого числа. заранее спасибо!

Тексты - Pascal
Наити число тех групп букв, которые заканчиваются той же буквой, что и первая группа букв.

тексты - Delphi
Ребята, помогите с прогой.... надо ппц ко вторнику сдать, а я проболела эту тему(((( Условие: Дан текстовый файл, состоящий из слов,...

Не скачать тексты. - Удаление вирусов
Здравствуйте.Если не туда влез прошу перенести в нужную тему. Пардон конечно.При попытке скачать тексты появляется вот такой ответ:Файл...


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

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

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