Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Методы хранение данных.

Ответить
Настройки темы
Методы хранение данных.

Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Есть необходимость хранить несколько последних чисел.

Ест ли алгоритм быстрее циклического стека?
И как его быстрее( с точки зрения скорости работы ) его организовать?

( дополнительно е условие: операции с самими элементами достаточно медленные )

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 19:53, 06-01-2004

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Если на ЯВУ, то реализовывать списками можно...

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 05:56, 07-01-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Prisoner
ява не подходит он слишком медленна и плохо работает с объектами и мамятью, только СПП!

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 19:10, 07-01-2004 | #3


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Vlad Drakula
Постановка задачи очень расплывчата. Очень.

ЯВУ - "язык высокого уровня", а не ява, которая java.

И мне очень интересно что такое "циклический стек", очень.

-------
http://ivank.ru


Отправлено: 20:15, 07-01-2004 | #4


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


ivank
если так то еще хуже.
дело втом что там очень много вызовов функцый, порядко 1.000.00 в секунду.

а задача четко поставлена: как самым тыстрым способом хранить последние N элементов.

идея циклической очереди была разработана очень давно.
во все компьютерах есть буфер обмена данных с клавиатуры.
это массив (вроде из 8 элементов) при нажатии на кнопку туда
записывается число, и счетцик конца увеличивается.
при чтении берется первый элемент в очереди а счетчик начала
сдвигается.
если счетчик конца доходит до начала то он обнуняется и начинает
затирать ранние элементы.
если конец упирается в начало то компьютер начинает пищать, это мы
ислушим при зависании винды

соодветственно я сейчас использую этот аналог, но только я начитаю не
скачала, как в очереди, а с конца, как в стеке.

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 01:02, 08-01-2004 | #5


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Vlad Drakula
Что такое циклическая очередь я знаю. А вот циклический стек - твоё изобратение. Собственно очередь на базе статического массива и есть самое оптимальное решение, почкольку все операции - O(1). Это при условии, что она не может переполнится, иначе просто заводим динамический массив и когда у нас кол-во элементов хочет перевалить за доступный максимум, то увеличиваем размер не размышляя вдвое. В случае плюсов удобнее всего юзать std::vector, ибо у него есть .resize(). Кстати, есть стандартные контейнеры дека и очереди, которые и пользуются приблизительно такой стратегией. std::deque и std::queue, соответсвенно.

Добавлено:

Vlad Drakula
Цитата:
хранить последние N элементов
- задача всё же нечёткая. Ибо не сказано, что с ними делается потом. Хотя в общем случае, очередь самое подходящее решение.

-------
http://ivank.ru


Отправлено: 01:40, 08-01-2004 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Методы хранение данных.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
ISA 2004 Хранение данных illznn ISA Server / Microsoft Forefront TMG 3 14-04-2009 10:12
хранение данных в интернете Sparkster Хочу все знать 12 11-10-2007 10:54
Borland C++ Builder - Хранение данных. Drem Программирование и базы данных 3 13-04-2007 15:32
Программа, обеспечивающая распределенное хранение данных в сети rrev Программное обеспечение Windows 7 08-02-2007 22:48
Хранение данных... bruno Хочу все знать 4 07-03-2006 16:42




 
Переход