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

Реализовать модель ассоциативного кеша - C++

Восстановить пароль Регистрация
 
main.c
24 / 24 / 4
Регистрация: 05.04.2012
Сообщений: 233
02.05.2014, 17:20     Реализовать модель ассоциативного кеша #1
Передо мной стоит задача, реализовать модель ассоциативного кеша, я решил использовать очередь с приоритетами, в ней будут храниться пары ключ-значение, ключом будет время, когда мы обращались к элементу, а значением сам элемент лежащий в кеше.
В приницпе сложности в реализации нет, но зачем писать свою реализацию, если есть STL. Но возникли некторые сложности, я никак не могу найти метод поиска элемента с заданным ключом? Он есть или мне прийдётся самому писать? И если прийдётся, то как это делается, я первый раз пользуюсь STL. Вот моя программа без метода поиска:
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
#include <iostream>
#include <queue>
 
using namespace std;
 
typedef struct CashStr{
    int addr;
    int time_resp;
} CashStr;
 
class CompCashStr{
    public:
        bool operator() (CashStr &x, CashStr &y){
            return (x.time_resp > y.time_resp);
        }
};
 
int main() {
    priority_queue<CashStr, vector<CashStr>, CompCashStr> pq;
    CashStr t[4] = {{100, 1},{200, 2},{300, 3},{400, 4}};
  
    for (int i = 0; i < 4; i++)
        pq.push(t[i]);
    
    while (!pq.empty()) {
        CashStr x = pq.top();
        cout <<  x.addr << " " << x.time_resp << " " << endl;
        pq.pop();
    }
       
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2014, 17:20     Реализовать модель ассоциативного кеша
Посмотрите здесь:

C++ [C++]Объявление шаблона ассоциативного массива map
C++ Сортировка ассоциативного контейнера!
вопрос по реализации ассоциативного контейнера C++
Не могу реализовать очередь (модель дозаправки самолетов в воздухе) C++
Программа на C++, которая переводит цветовую модель RGB в модель HSV C++
C++ Определить размер кеша инструкций первого уровня с помощью ассемблерной вставки
C++ Класс-шаблон ассоциативного массива с использованием вектора
C++ Создание класса шаблона, ассоциативного массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
02.05.2014, 17:38     Реализовать модель ассоциативного кеша #2
У очереди не может быть произвольного доступа к элементам.
Yandex
Объявления
02.05.2014, 17:38     Реализовать модель ассоциативного кеша
Ответ Создать тему
Опции темы

Текущее время: 15:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru