• Что почитать по обработке изображений на Java?

    @Koss1024
    Правильный ответ конечно не обрабатывать изображения на ява :)
    (с) Джон Кармак.

    Попробуйте мапинги библиотеки OpenCV
    Ответ написан
  • Эффективное использовование STL (C++). Как написать программу не используя циклов?

    @Koss1024
    #include <iterator>  // istream_iterator
    #include <map>
    #include <algorithm> // transform
    #include <string>
    #include <locale> // tolower
    
    // Input file looks like this:
    /* text.txt
    You wanna play a little game?
    Check this out.
    */
    
    using namespace std;
    
    typedef map<string, string> Vocabulary;
    Vocabulary vocabulary;
    
    string translator(string word)
    {
       transform(word.begin(), word.end(), tolower); // locase
    
       Vocabulary::const_iterator trans = vocabulary.find(word);
       return vocabulary.end() != trans ? *trans : word;
    }
    
    void translate_file(string fin, string fout, const Vocabulary& vocabulary)
    {
       ifstream in(fin);
       ifstream out(fout);
    
       istream_iterator<string> original_words(in);
       istream_iterator<string> eof;
    
       ostream_iterator<string> tranlated_words(out, " ");
    
       transform(original_words, eof, tranlated_words, translator);
    }
    
    
    int main()
    {
       
       vocabulary["you"]    = "vy";
       vocabulary["wanna"]  = "hotite";
       vocabulary["game"]   = "igra";
       // ...
    
       translate_file("text.txt", "translated_text.txt", vocabulary);
       return 0;
    }
    Ответ написан
  • Какие есть платформы для совместной разработки программ?

    @Koss1024
    Стоило бы указать хоть какую-то информацию о проекте.

    Разработка это процесс, в простом смысле после того как есть требования:
    Планируем(jira, agile, canban) -> Думаем -> Делаем(пишем код) -> проверяем(тесты, ревью) -> Правивим -> Интегрируем (git) и по кругу

    Для командной разработки требуются:
    Управление релизами и задачами.
    - Trello, отличный бесплатный сервис
    - jira обычно встроена в любой веб репозиторий в той или иной форме. (Atlassian jira почти стандарт)

    Пишем код как удобно (sublime text, vim :) )
    Пишем и запускаем тесты (поможет система continious integration: jenkins, atlassian bamboo)
    Код ревью: atlassian crusible.

    Сабмитим в систему контроля версий (git, hg, perforce)

    Отдельно стоит документирование

    Все вместе из бесплатного:
    Atlassian Bitbucket - прекрасное решение для закрытых репозиториев. Есть jira, wiki, git, hg, и много чего еще
    github Это если ваш проект opensource и вам нужна социалка прикрученная прямо к проекту :)
    Ответ написан
  • Есть ли в мире что-то, что не подчиняется законам математики?

    @Koss1024
    Вообще то ничего математике не подчиняется.
    Просто мы подбираем модель которая описывает процесс или явление, и говорим что это явление
    похоже ведет себя по этому закону.
    Проводим наблюдения улучшая или меняя модель.
    И все.

    Никакой магии. Математика исследует модели. Модели все больше похожи на реальный мир но им не являются.

    Почитайте что-нибудь о научной методологии.
    Ответ написан
    Комментировать
  • Что посоветуете для самостоятельного освоения паттернов проектирования?

    @Koss1024
    Мне это напоминает как в зал по изучению Джиу Джитсу мама привела ребенка и попросила тренера научить его драться, но при этом не ставить его в спарринг.

    Паттерны без рабочей практики бесполезно изучать и даже вредно. Паттерны решают задачи управления сложностью программных систем. А зачем ей управлять если вы ее никогда не видели?
    Ответ написан
  • Как найти оптимальное приближение набора данных ломаной с заданным числом узлов?

    @Koss1024
    Слишком мало данных для полного ответа.

    Вообще вам подойдет сплайн первого порядка с нужным количеством узлов (это и есть ломаная)
    Просто непрерывная кривая (недифференцируемая в точках излома)
    Математику сего процесса можно найти в NURBS book или в интернетах

    Например очень глубоко проработана теория NURBS сплайнов
    Нагуглить работающий интерполятор несложно (с незафиксированными узлами)
    Я давно не заглядывал но вроде NURBS++ работал гуд

    Там параметризуется обычно количество узлов и границы

    Узлы очевидно стоит размещать поближе к точкам с минимальным модулем производной
    (перегибы, минимумы и максимумы)
    Ответ написан
    2 комментария
  • Python 2 vs Python 3 ?

    @Koss1024
    Учить второй питон это как начинать учить программирование с паскаля
    только чуть лучше.

    Зачем учить что-то что уже годы как не развивается? А значит умирает

    Конечно питон 3.

    Если попадется старый код, то Вы все равно его поймете если надо, но будете знать много нового
    Ответ написан
    Комментировать
  • Как организовать построение пирамид изображений?

    @Koss1024
    Это уже очень большое изображение. Стоит его разбить на тайлы со стороной степени двойки
    И их использовать как основание пирамиды.

    Элементарной интерполяций получить тайны вчетверо меньше и т/д

    Собсно все

    Но только мне кажется что я неправильно понял вопрос поскольку это весьма очевидно :)
    Ответ написан
    Комментировать
  • Стоит ли использовать private static функции в C++?

    @Koss1024
    На самом деле ответ неоднозначен. И важны критерии

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

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

    Однако если доступ таки нужен (что скорее всего результат не лучшей декомпозиции) то конечно да

    Это не вопрос стиля. В С++ тоже можно и нужно писать функции. Это не Java.
    Ответ написан
    Комментировать
  • Необходимо получить первые N наиболее встречающиеся слова в текстовом файле?

    @Koss1024
    А что подсказать? В чем вопрос?

    Или написать за Вас код?

    Алгоритм прост:
    Читаем слова из файлового потока и собираем в map примерно так

    ifstream fs("filename.txt");
    map freq; // частоты файлов
    string word;
    while(read_next_word(fs, word)) // read and skip spaces tabs etc... (тут логика пропуска ненужных символов)
    {
    transform(word.begin(), word.end(), word.begin(), tolower); //lowercase
    freq[word]++; // увеличиваем счетчик для нашего слова
    }

    теперь у нас есть частоты всех слов в мапе скопируем ее в вектор и отсортируем по частотам

    vector > vocabulary(freq.begin(), freq.end());
    sort(vocabulary.begin(), vocabulary.end(), less_second); // можно лямбдой будет проще если можно с++11

    Слова в контейнере vocabulary отсортированы по частоте и делать с ними можно что угодно

    где
    bool less_second(const pair& a, const pair& b)
    {
    return a.second < b. second;
    }

    Это действительно весь код. (кроме логики пропуска символов, но там все просто по моему)
    Ответ написан
    Комментировать
  • Какую кривую эффективнее построить на множестве [0; 1] - Безье, нецелочисленную степенную или гиперболу?

    @Koss1024
    Здесь как родная ложится Рациональная кривая Безье второго порядка

    Базис
    b0(t) = (1-t)^2
    b1(t) = 2*(1-t)
    b2(t) = t^2

    Точки
    P0 = (0, 0)
    P1 = (1, 0) (или 0,1)
    P2 = (1, 1)

    Тогда обычная кривая имеет вид: B(t) = sum_by_i(b(i) *P(i))

    Рациональная B(t) = sum_by_i(b(i) * P(i) * w(i) ) / sum_by_i(b(i, w(i))

    Где w(i) это веса вершин установив значение w(1) > 1 вы получите свой результат

    На пальцах кривая стремится приблизиться к вершине с весом > 1 и наоборот
    Ответ написан
    Комментировать
  • Как правильно распарсить запись функции и какие структуры данных использовать для ее хранения?

    @Koss1024
    Алгоритм известен более чем
    https://ru.wikipedia.org/wiki/Алгоритм_сортировочн...
    Пример в статье заменяем на названия функций и все. Если речь не идет о просини выражений дополнительно.

    Вопрос точно по С++? Поскольку запрос с сервера здесь выглядит слегка неуместно
    Всему свой тул
    Ответ написан
    Комментировать