Separate Data Structures and Problem-Solving Patterns in the Pattern Filter

Aperta
#554 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
55/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
frontend

Direzione di ricerca

Start by locating the existing Patterns filter and the source of its options, then trace how selected filters affect the displayed questions. Separate data structures from problem-solving patterns and confirm users can combine selections from both categories; done means combinations such as Array + Two Pointers work as described.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Problem

The current Patterns filter contains both data structures and problem-solving patterns/techniques in the same list.

For example, the filter currently includes items such as:

  • Array
  • Linked List
  • Binary Search
  • Backtracking
  • Two Pointers
  • Greedy
  • etc.

This makes the filter a little harder to use when someone wants to practice a specific type of data structure or a specific problem-solving pattern.

For example, a user looking specifically for Two Pointers problems has to search through the same list that also contains data structures such as Array and Linked List.

Proposed Improvement

Separate the existing options into two categories/filters:

Data Structures
  • Array
  • Linked List
  • Stack
  • Queue
  • Hash Table
  • Tree
  • Graph
  • Heap
  • etc.
Problem-Solving Patterns / Techniques
  • Two Pointers
  • Sliding Window
  • Binary Search
  • Backtracking
  • Greedy
  • Dynamic Programming
  • Prefix Sum
  • Fast & Slow Pointers
  • Monotonic Stack
  • etc.

This would also allow users to combine filters.

For example:

Data Structure: Array + Pattern: Two Pointers

or:

Data Structure: Linked List + Pattern: Fast & Slow Pointers

Screenshot

Image

Expected Benefit

Separating these concepts would make the filtering experience clearer
and make it easier for users to study questions based on either:

  1. The data structure involved
  2. The problem-solving pattern/technique used

Implementation

I would like to work on this issue and implement the proposed improvement, if this approach aligns with the project's direction.

Lingua principale
TypeScript
Stelle
14.3k
Fork
2.3k
Merge medio
27m
PR unite (30g)
7

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di seanprashad/leetcode-patterns

Tutte le issue di seanprashad/leetcode-patterns

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.