File tree

1 file changed

+17
-10
lines changed

1 file changed

+17
-10
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
# leetcode-problem-picker
22

33
## Original motivation:
4-
A quick answer to the question “Which leetcode problem should I do next?”
5-
Randomly choosing from 1750 questions wasn’t cutting it for me.
4+
A quick answer to the question “Which leetcode problem should I do next?” Because randomly choosing from 1750 questions wasn’t cutting it for me.
65

76
## Possible modes:
8-
While I was practicing, I found that I had different needs:
9-
1. Topic focus: e.g. “only graph or DP problems”.
10-
2. (company) list: e.g. which problems were more frequently asked by companies that I’m interested in?
11-
3. Level up: (incomplete/WIP)
12-
User maintains a list of completed/failed problems (and time spent solving) and program determines an approximate “skill range” for each topic (e.g. Hard 24-28% for Trees, Medium 34-45% for dynamic programming) by factoring in each problem’s “acceptance rate”. Then it gives a problem within that range, balancing being challenged with not being discouraged. Idea comes from RPGs.
13-
4. Improved random (TODO)
14-
Still random, but adds weight to problems with higher like count (and higher like-dislike ratio) and possibly to problems with lower number.
7+
Needs that I have discovered so far:
8+
1. Topic Focus: “only graph or DP problems”.
9+
2. Filtered Lists: Which problems were frequently asked by companies I’m interested in? Also lists like Blind 75
10+
3. Level Up (WIP): Determines user's "skill range" for each topic in order to challenge (and not discourage).
11+
4. Weighted random (TODO): Weighted towards high like count, high like-dislike ratio, etc.
12+
13+
# Uhhhhh nice README but where's the code?
14+
I personally use this program every time I do leetcode. I wish to share and help others, but what I have is a product of months of ideas. It is neither presentable nor ready for public consumption (i.e. in the way described in this README)
15+
16+
If you are interested in this idea, please star this repo and revisit in a week or so. If this project gathers enough interest, I will have no choice but to dedicate more evenings to this project.
1517

1618
## Setup:
1719
```git clone https://.com/evliang/leetcode-problem-picker.git```
@@ -70,4 +72,9 @@ Then, from Developer Tools, run
7072

7173
```console.log(Array.from(document.querySelectorAll('.reactable-data tr td[label="#"]')).map(x => x.textContent).toString())```
7274

73-
And copy the list into text file
75+
And copy the list into text file
76+
77+
## TODO
78+
79+
1. Refactor what I have. Stay tuned.
80+
2. Level Up: User maintains a list of attempted problems. Program combines this with each problem’s “acceptance rate” to approximate a “skill range” for each topic (e.g. Hard 24-28% for Trees, Medium 31-45% for graphs).

0 commit comments

Comments
 (0)