Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1730 • Страница 73 из 87<  1 ... 70  71  72  73  74  75  76 ... 87  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 15.02.2009
Откуда: Лангепас
manya Поиск некоторого подмножества - поиск совпадений слов с заданным набором или с совпадением с последовательностью слов?
Если только поиск с совпадением слов из заданного набора, то лучше проходы по бинарному дереву. Быстрее будет IMXO



Партнер
 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
oxy
совпадение с последовательностью

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 15.02.2009
Откуда: Лангепас
manya писал(а):
oxy
совпадение с последовательностью

Тут лучше иметь некий "массив" символов. Я уже упоминал о динамическом массиве. Откопаю некогда написанный класс - выложу. Правда он писался по DOS и нужно поменять все типы индексов, размеров и пр на что-то типа long unsigned, так же и с malloc разобраться...
З.Ы. Покопаться в загашниках - так и быстрый поиск последовательности в массиве можно нарыть...


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
oxy
спасибо

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 15.02.2009
Откуда: Лангепас
manya Вот Скачать файлик structs.zip с rapidshare.ru с реализацией нескольких типов данных. Основа - класс, динамический массив. Дельта, с которой изменяется размер равна
Код:
#define         MEMPORTION      16

Класс создавался как хранидище указателей (на объекты в моей проге), поэтому всё завязано на void* , думаю переделать несложно будет. (внимание на удаление и вставку элемента, а то деструктор на char = 'd' вызовешь ;) )


 

Junior
Статус: Не в сети
Регистрация: 26.02.2011
Подскажите, насколько быстро срабатывают события CreateEvent, SetEvent, ResetEvent (WinApi) для синхронизации потоков?

Допустим есть 2 рабочих потока и они должны часто синхронизироваться (каждый не должен начинать следующую итерацию, пока оба не закончат предыдущую). То есть в главном потоке в цикле ожидать (WaitForMultipleObjects(2, hEvent, TRUE, INFINITY)) пока оба не зажгут событие (SetEvent()), что они закончили итерацию. Насколько оправдан такой механизм в плане быстродействия, если итерации довольно частые (сотни раз в секунду), или все время будет тупо тратиться на ожидание и установку событий?


 

Member
Статус: Не в сети
Регистрация: 15.02.2009
Откуда: Лангепас
CrabmanКакая Винда интересует?


 

Junior
Статус: Не в сети
Регистрация: 26.02.2011
а в xp/vista/7 большие различия имеются? Ну вообще для 7ки интересно.


 

Member
Статус: Не в сети
Регистрация: 07.01.2010
oxy писал(а):
ToSHiCКакая альтерантива? Учитывая, что размер неизвестен, то только динамические структуры - списки, динам. массивы, тот же vector и пр.
вот этих структур только очень много :)
manya писал(а):
oxy
0. Альтернатива - пока список
1. Смысл - поиск некоторого заданного подмножества слов
2. Извлечение - поиск, сравнения, вычисление некоторых функций по совпадающим группам символов в словах
Не, не "Руслан и Людмила":)

поиск точный, или по совпадению от начала слова, или просто совпадение подстроки в строке? в первом случае hashmap, во втором - map, в третьем можно и список. но возможны и хитрые варианты с применением каких нибудь неординарных функций сравнения для построения бинарного дерева, например.

Добавлено спустя 5 минут 1 секунду:
Crabman писал(а):
Подскажите, насколько быстро срабатывают события CreateEvent, SetEvent, ResetEvent (WinApi) для синхронизации потоков?

Допустим есть 2 рабочих потока и они должны часто синхронизироваться (каждый не должен начинать следующую итерацию, пока оба не закончат предыдущую). То есть в главном потоке в цикле ожидать (WaitForMultipleObjects(2, hEvent, TRUE, INFINITY)) пока оба не зажгут событие (SetEvent()), что они закончили итерацию. Насколько оправдан такой механизм в плане быстродействия, если итерации довольно частые (сотни раз в секунду), или все время будет тупо тратиться на ожидание и установку событий?

время работы SetEvent - порядка единиц-десятков микросекунд. А вот WaitForMultipleObjects будет сразу решедулить поток, тут и до нескольких миллисекунд время может легко вырасти, в зависимости от количества запущенного софта, приоритета потока и количества ядер процессора/ов


 

Junior
Статус: Не в сети
Регистрация: 26.02.2011
ToSHiC Ясно, благодарю.


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
ToSHiC
совпадение подстроки
спасибо

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 09.04.2006
А вопросы по C sharpтоже сюда пихать? Ну я думаю итак понятно будет. хочу вывести в консоль ёлочку, вроде:

*
**
***
****
*****

Где моя логика работает не через то место?


Код:
 static void Main(string[] args)
        {
            int i;
            int second_counter;
           
              for (i=0; i<5; i++)
                {
                    for (second_counter = 0 - i; second_counter == 0; second_counter++)
                     {System.Console.Write("*");}
                    System.Console.Write("\n");
              }
                 Console.ReadLine();
        }

_________________
Библиотеки Windows - Мы заставим ваши папки тормозить!


 

Member
Статус: Не в сети
Регистрация: 20.03.2009
Откуда: Санкт-Петербург
moty
Шарп не знаю, но мне очень не нравится условие
Код:
second_counter == 0;

_________________
Задачи бывают простыми и очень простыми...


 

Member
Статус: Не в сети
Регистрация: 07.01.2010
да, проблема в условии, надо <= там написать вместо ==
я б написал всё таки
Код:
for (second_counter = 0; second_counter <= i; second_counter++)

ведь так намного понятнее


 

Member
Статус: Не в сети
Регистрация: 08.05.2006
Откуда: СПБ
moty писал(а):
for (second_counter = 0 - i; second_counter == 0; second_counter++)

дел все в том что при первом заход в цикл у вас получается second_counter= 0 - 0, что и есть выход из цикла

_________________
Мы все знаем, что Linux — это круто… он выполняет бесконечные циклы за 5 секунд.
* Линус Торвальдс


 

Member
Статус: Не в сети
Регистрация: 03.03.2011
Откуда: Amsterdam
Привет всем, почитываю на досуге K&R, желаю закрепить результат приложением на С, в сфере задач которого работа с сетью и регулярными выражениями.
Подскажите, какие есть хорошие либы, желательно кроссплатформенные (либо просто под винду) на стандартный C - нужны работа с сетью + документация к этому делу.
Может кто сталкивался? Дело в том, что по "C Networking" гугл выдает мануалы под никсы. Это немного не то. А на С++ в данный момент переходить не хотелось бы.

Добавлено спустя 1 час 29 минут 52 секунды:
Черт, ответ был настолько очевиден, что сперва от меня ускользнул. Конечно же, мне нужна cURL ! И примеры хорошие.


 

Member
Статус: Не в сети
Регистрация: 07.01.2010
curl - это не работа с сетью, это http/ftp библиотека. с сетевыми библиотеками именно под С всё сложно. с другой стороны, там не так уж прямо много кода нужно написать. http://www.codeproject.com/KB/IP/winsockintro02.aspx


 

Member
Статус: Не в сети
Регистрация: 03.03.2011
Откуда: Amsterdam
ToSHiC спасибо за помощь, но я просто крайне некорректно выразился, важна была именно работа по http, в простом проявлении, к примеру, забрать исходник веб страницы для анализа, поэтому CURL и приходится как нельзя кстати. :-)


 

Member
Статус: Не в сети
Регистрация: 14.05.2009
Откуда: Питер
Фото: 0
1)float seven ()
{int S;
for(i=A;i<=B;i++);
if(i%7==0)
S=S+i;
return S;
}
2)float predel
{float y,p;
int n;
for(y=1;n=2;p=2;1(Y>e);n++)
{y=n*(y+1);
p=p*(1+1/y);
y=n*(y-1);
}
return y;
}
Обе программы не работают.В чем ошибки?


 

Member
Статус: Не в сети
Регистрация: 03.03.2011
Откуда: Amsterdam
KirillMga ну, это и не программы, а просто функции же.
В первом случае кажется неправильным:
1) объявляем функцию как флоат, а возвращаем инт. Логичнее сделать и то, и то интом, т.к. возвращаться будет в любом случае целочисленное значение.
2) в функции фигурируют A, B - может быть, они объявлены константами? Лучше было бы сделать просто передачу этих переменных в качестве аргументов.
Короче, мой вариант - http://pastebin.com/W6vRS1s2


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1730 • Страница 73 из 87<  1 ... 70  71  72  73  74  75  76 ... 87  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan