Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
0737ada
exercise solutions
StaceyO21 Jul 28, 2025
a0d9815
exercise 2
StaceyO21 Aug 8, 2025
f3cf648
Merge pull request #1 from StaceyO21/Valid_Anagram
StaceyO21 Aug 8, 2025
3cf3341
two sum
StaceyO21 Aug 10, 2025
e514709
Merge pull request #2 from StaceyO21/Valid_Anagram
StaceyO21 Aug 10, 2025
29414e4
group anagrams
StaceyO21 Aug 11, 2025
1aff125
merging
StaceyO21 Aug 11, 2025
b625021
Merge pull request #3 from StaceyO21/Group_Anagrams
StaceyO21 Aug 11, 2025
ed3ff73
Contains Duplicate
StaceyO21 Aug 27, 2025
b8678d9
Valid Anagram
StaceyO21 Aug 27, 2025
3feefa8
Merge pull request #4 from StaceyO21/ContainsDuplicate_Java
StaceyO21 Aug 27, 2025
47347c3
Merge pull request #5 from StaceyO21/ValidAnagrams_Java
StaceyO21 Aug 27, 2025
cac378e
Two_sum:
StaceyO21 Sep 1, 2025
846e1fc
Merge pull request #6 from StaceyO21/TwoSum_Java
StaceyO21 Sep 1, 2025
71e0cf4
group anagram
StaceyO21 Sep 3, 2025
1922207
Merge pull request #7 from StaceyO21/GroupAnagram_Java
StaceyO21 Sep 3, 2025
6088ea3
Top Freq k
StaceyO21 Sep 3, 2025
932d089
Product of array
StaceyO21 Sep 4, 2025
be2483e
Merge pull request #8 from StaceyO21/ProductofArrayXItself
StaceyO21 Sep 4, 2025
e54e0db
valid sudoku
StaceyO21 Sep 4, 2025
c3ab56c
Merge pull request #9 from StaceyO21/ValidSydoku
StaceyO21 Sep 4, 2025
9c9080b
Longest conseq seq branch
StaceyO21 Sep 4, 2025
bad6eda
Longest Conseq Sequence
StaceyO21 Sep 10, 2025
44f25ba
Merge pull request #10 from StaceyO21/LongConsSeq
StaceyO21 Sep 10, 2025
6cd7828
valid palindrome java
StaceyO21 Sep 10, 2025
eaf6f9b
Two Sum II java
StaceyO21 Sep 10, 2025
ad55b12
Merge pull request #11 from StaceyO21/LongConsSeq
StaceyO21 Sep 10, 2025
c277382
three sum
StaceyO21 Sep 11, 2025
c079c4d
contain water
StaceyO21 Sep 17, 2025
e9e4cc2
valid_parentheses
StaceyO21 Sep 18, 2025
8759bd6
Merge pull request #12 from StaceyO21/Valid_Parentheses
StaceyO21 Sep 18, 2025
088c28e
min stack
StaceyO21 Sep 18, 2025
5b8544a
Merge pull request #13 from StaceyO21/Min_Stack
StaceyO21 Sep 18, 2025
44e411d
min stack
StaceyO21 Sep 21, 2025
89dedc9
Merge pull request #14 from StaceyO21/Min_Stack
StaceyO21 Sep 21, 2025
80b0aaf
eval rev pol not
StaceyO21 Sep 23, 2025
e6b78aa
Merge pull request #15 from StaceyO21/EvalRevPolishNotation
StaceyO21 Sep 23, 2025
56d0a11
creating generate parentheses
StaceyO21 Sep 23, 2025
fc6aeeb
gen parentheseis
StaceyO21 Sep 25, 2025
1fddfae
Merge pull request #16 from StaceyO21/GenerateParentheses
StaceyO21 Sep 25, 2025
b5ef3c4
creating daily temps
StaceyO21 Sep 25, 2025
1af6bf1
Merge pull request #17 from StaceyO21/DailyTemps
StaceyO21 Sep 25, 2025
787e169
daily temps
StaceyO21 Oct 8, 2025
325b0e4
Merge pull request #18 from StaceyO21/DailyTemps
StaceyO21 Oct 8, 2025
9a7f016
find min in rotated sorted array
StaceyO21 Dec 1, 2025
8783507
search rotated sorted array
StaceyO21 Dec 4, 2025
4891707
koko
StaceyO21 Dec 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .idea/2025-software-dev-problem-set.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

71 changes: 71 additions & 0 deletions .idea/workspace.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions solutions/.idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions solutions/.idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions solutions/.idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions solutions/.idea/solutions.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions solutions/.idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions solutions/ContainerWMostWater.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
class Solution {
public int maxArea(int[] height) {
int l = 0;
int r = height.length - 1;
int res = 0;

while(l < r){
int area = Math.min(height[l], height[r]) * (r - l);
res = Math.max(res, area);
if (height[l] <= height[r]) {
l++;
}else{
r--;
}
}
return res;
}
}
Empty file.
17 changes: 17 additions & 0 deletions solutions/DailyTemps.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import java.util.Stack;

public class DailyTemps {
int[] res = new int[temperatures.length];
Stack<int[]> stack = new Stack<>();

for(int i = 0; i < temperatures.length; i++){
int t = temperatures[i];

while(!stack.isEmpty() && t > stack.peek()[0]){
int[] pair = stack.pop();
res[pair[1]] = i - pair[i];
}
stack.push(new int[]{t, i});
}
return res;
}
26 changes: 26 additions & 0 deletions solutions/Eval_Rev_Polish_Notation.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import java.util.Stack;

class Solution {
public int evalRPN(String[] tokens) {
Stack<Integer> stack = new Stack<>();

for(String c : tokens){
if(c.equals("+")){
stack.push(stack.pop() + stack.pop());
} else if(c.equals("-")){
int a = stack.pop();
int b = stack.pop();
stack.push(b - a);
} else if(c.equals("*")){
stack.push(stack.pop() * stack.pop());
} else if(c.equals("/")){
int a = stack.pop();
int b = stack.pop();
stack.push(b / a);
} else {
stack.push(Integer.parseInt(c));
}
}
return stack.pop();
}
}
16 changes: 16 additions & 0 deletions solutions/FindMinSortedArray.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
public class FindMinSortedArray {
public int findMin(int[] nums){
int l = 0;
int r = nums.length - 1;

while(l < r){
int m = l + (r - l) / 2;
if (nums[m] < nums[r]) {
r = m;
} else {
l = m + 1;
}
}
return nums[l];
}
}
30 changes: 30 additions & 0 deletions solutions/Gen_Parentheses.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import java.util.ArrayList;
import java.util.List;

class Solution {
private void backtrack(int openN, int closedN, int n, List<String> res, StringBuilder stack) {
if(openN == closedN && openN == n){
res.add(stack.toString());
return;
}

if(openN < closedN){
stack.append('(');
backtrack(openN + 1, closedN, n, res, stack);
stack.deleteCharAt(stack.length() - 1);
}

if(closedN < openN){
stack.append(')');
backtrack(openN, closedN + 1, n, res, stack);
stack.deleteCharAt(stack.length() - 1);
}

public List<String> generateParenthesis(int n){
List<String> res = new ArrayList<>();
StringBuilder stack = new StringBuilder();
backtrack(0, 0, n, res, stack);
return res;
}
}
}
24 changes: 24 additions & 0 deletions solutions/Group Anagrams.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
class Solution {
/**
* @param {string[]} strs
* @return {string[][]}
*/
groupAnagrams(strs) {
res = {};

for(let s in strs){
let count = Array(26).fill(0);

for(let letter in s){
count[letter.charCodeAt(0) - 'a'.charCodeAt(0)] += 1;
}
const key = count.join(',');

if(!res[key]){
res[key] = [];
}
res[key].push(s);
}
return Object.values(res);
}
}
19 changes: 19 additions & 0 deletions solutions/Group_Anagram.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import java.util.*;

public class Group_Anagram {
public List<List<String>> groupAnagrams(String[] strs) {
Map<String, List<String>> res = new HashMap<>;

for (String s : strs) {
int[] count = new int[26];
for (char c : s.toCharArray()) {
count[c - 'a']++;
}

String key = Arrays.toString(count);
res.putIfAbsent(key, new ArrayList());
res.get(key).add(s);
}
return new ArrayList<>(res.values());
}
}
25 changes: 25 additions & 0 deletions solutions/KokoBananas.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import java.util.Arrays;

public class KokoBananas {
public int minEatingSpeed(int[] piles, int h){
int l = 1;
int r = Arrays.stream(piles).max().getAsInt();
int res = r;

while(l <= r){
int k = (l + r) / 2;

int totalTime = 0;
for(int p : piles){
totalTime += Math.ceil((double) p / k);
}
if(totalTime <= h){
res = k;
r = k - 1;
} else{
l = k + 1;
}
}
return res;
}
}
19 changes: 19 additions & 0 deletions solutions/LConsSeq.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import java.util.HashMap;
import java.util.Map;

class Solution {
public int longestConsecutive(int[] nums) {
Map<Integer, Integer> mp = new HashMap<>();
int res = 0;

for(int num : nums){
if (!mp.containsKey(num)){
mp.put(num, mp.getOrDefault(num - 1, 0) + mp.getOrDefault(num + 1, 0) + 1);
mp.put(num - mp.getOrDefault(num - 1, 0), mp.get(num));
mp.put(num + mp.getOrDefault(num + 1, 0), mp.get(num));
res = Math.max(res, mp.get(num));
}
}
return res;
}
}
Loading