Skip to content

tantarin/algocards

Repository files navigation

123 problems 20 patterns PWA

AlgoCards

Flashcard-приложение для запоминания алгоритмических паттернов.

Без регистрации, без бэкенда, работает офлайн. Открыл — листаешь карточки — учишь.

tantarin.github.io/algocards — открой на телефоне и добавь на главный экран


Что внутри

Каждая карточка — это задача с двух сторон:

Лицевая сторона (условие):

  • Полное описание задачи с примерами ввода/вывода
  • Подсвеченные ключевые слова — визуальные подсказки к паттерну
  • Кнопка Подсказка — 1-2 предложения, наводящие на решение
  • Кнопка Схема решения — пошаговый план алгоритма (2-4 шага)

Обратная сторона (решение):

  • Java-код с подсветкой синтаксиса
  • Объяснение алгоритма
  • Big-O сложность по времени и памяти

Паттерны

Паттерн Задач Паттерн Задач
Two Pointers 27 Sliding Window 13
Trees / DFS 14 Greedy 9
HashMap 9 Intervals Sweep 8
Stack 6 Math / Simulation 6
Prefix Sum (strict + ext.) 8 Backtracking 4
Binary Search 4 Geometry Hash 3
Heap / PQ 2 Linked List 2
Union-Find 2 Window + Deque 2
Graph BFS 1 Graph Toposort 1
Strings Prefix 1 Dynamic Programming 2

Возможности

  • Фильтрация по паттерну — выбери нужную тему
  • Поиск по тексту — найди задачу по ключевым словам из условия
  • Перемешивание — рандомный порядок карточек
  • PWA — установи на телефон, работает офлайн
  • Мобильный интерфейс — адаптивный дизайн для iPhone и Android

Установка на телефон

iOS (Safari)

  1. Открой tantarin.github.io/algocards
  2. Нажми Поделиться (иконка со стрелкой)
  3. На экран «Домой»

Android (Chrome)

  1. Открой tantarin.github.io/algocards
  2. Нажми Добавить на главный экран

Технологии

  • Vanilla JS, HTML, CSS — zero dependencies в рантайме
  • highlight.js — подсветка Java-кода
  • Service Worker — офлайн-кеширование
  • PWA manifest — установка на телефон

Структура проекта

index.html      — приложение (UI + логика)
problems.js     — 123 задачи (условия, код, подсказки, шаги, сложность)
sw.js           — Service Worker для офлайна
manifest.json   — PWA-манифест

Как добавить задачу

Каждая задача в problems.js — объект с полями:

{
  id: "xx1",           // уникальный id
  t: "Название",       // заголовок
  p: "Two Pointers",   // паттерн
  d: "средне",         // сложность: легко / средне / сложно
  desc: `...`,         // условие с примерами, ==ключевые слова== для подсветки
  hint: `...`,         // подсказка (1-2 предложения)
  code: `...`,         // Java-решение
  steps: `...`,        // схема решения (2-4 шага)
  complexity: `...`,   // Big-O: время и память
  expl: `...`          // объяснение алгоритма
}

Источник задач

Задачи взяты из репозитория tantarin/algosy — коллекция алгоритмических паттернов для подготовки к собеседованиям.

Лицензия

MIT


Сделано для тех, кто готовится к алгособесам

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors