Skip to content

New World Project AG company sort double numbers(stored in files 1GB) with memory restriction recursive_shared_mutex - own realization not use C14 wildcards search dbcache with transaction(arangodb, cassandra, sqlite)

Notifications You must be signed in to change notification settings

jupiterfirepower/CPLUSPLUSTESTTASK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ TESTTASK

     1. Напишите программу, которая отсортирует числа формата double
хранящихся в текстовом файле размером 1Гб (одно число в одной строке).

Пример
     • 8.33891e+307
     • 1.26192e+308
     •
     • 8.19572e+307
     • ...
     • 0
     1.64584e+304

Программа должна использовать не более 100Мб оперативной памяти, и
работать не дольше 25-30 минут (на 2Гц современном одноядерном процессоре).
Обязательные параметры: <имя файла не отсортированного> <имя файла отсортированного>
Также должен быть написан генератор не отсортированного 1Гб файла с числами формата double


2. Написать собственную реализацию shared_mutex поддерживающий рекурсию. Не используя C14.
Использовать платформонезависимый код – средства stl и boost (но не использовать shared_mutex).


3. Написать алгоритм поиска текста по маске с wildcards (можно просто функцию куда передается два параметра - строка поиска и строка с маской). Wildcards содержит символы * и ?

4. Представим что есть интерфейс к БД:

struct i_db
{
     bool begin_transaction();
     bool commit_transaction();
     bool abort_transaction();
     std::string get(const std::string& key);
     std::string set(const std::string& key, const std::string& data);
     std::string delete(const std::string& key);
}

Написать реализацию кеша для БД, обратить внимание на многопоточность и на транзакционную модель работы с БД.

На выполнение заданий сутки.
(наверное имеется в виду 8h)
так как сутки 8*3=24 три дня, подразумевается 8h

About

New World Project AG company sort double numbers(stored in files 1GB) with memory restriction recursive_shared_mutex - own realization not use C14 wildcards search dbcache with transaction(arangodb, cassandra, sqlite)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published