diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 00000000..29097fe8
Binary files /dev/null and b/.DS_Store differ
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 00000000..26d33521
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/.idea/Design-1.iml b/.idea/Design-1.iml
new file mode 100644
index 00000000..b107a2dd
--- /dev/null
+++ b/.idea/Design-1.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 00000000..919ce1f1
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 00000000..a55e7a17
--- /dev/null
+++ b/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 00000000..f5bd2dfe
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 00000000..cc065d00
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MinStack.java b/MinStack.java
new file mode 100644
index 00000000..9c549dfc
--- /dev/null
+++ b/MinStack.java
@@ -0,0 +1,42 @@
+import java.util.Stack;
+
+public class MinStack {
+ private Stack st;
+ private Stack minSt;
+ private static int min;
+
+ public MinStack() {
+ this.min = Integer.MAX_VALUE;
+ this.st = new Stack<>();
+ this.minSt = new Stack<>();
+ this.minSt.push(this.min);
+ }
+
+ public void push(int val) {
+ min = Math.min(min, val);
+ st.push(val);
+ minSt.push(min);
+ }
+
+ public void pop() {
+ int re = st.pop();
+ minSt.pop();
+ min = minSt.peek();
+ }
+
+ public int top() {
+ return st.peek();
+ }
+
+ public int getMin() {
+ return min;
+ }
+
+ public static void main(String args[]){
+ MinStack ms = new MinStack();
+ ms.push(10);
+ ms.push(4);
+ System.out.println(ms);
+
+ }
+}
diff --git a/MyHashSet.java b/MyHashSet.java
new file mode 100644
index 00000000..66f3c1d8
--- /dev/null
+++ b/MyHashSet.java
@@ -0,0 +1,68 @@
+import java.util.LinkedList;
+import java.util.List;
+
+class Bucket{
+ private List container;
+
+ public Bucket(){
+ this.container=new LinkedList();
+ }
+
+ public void insert(Integer val){
+ int index=this.container.indexOf(val);
+ if(index==-1){
+ this.container.addFirst(val);
+ }
+ }
+
+ public void remove(Integer val){
+ this.container.remove(val);
+ }
+
+ public boolean contains(Integer val){
+ int index=this.container.indexOf(val);
+ return index!=-1;
+ }
+
+}
+class MyHashSet {
+
+ //use a prime number for bucket size
+ int bucketSize=769;
+ Bucket[] buckets;
+
+ public MyHashSet() {
+ this.buckets=new Bucket[this.bucketSize];
+
+ for(int i=0; i < bucketSize; i++){
+ this.buckets[i]=new Bucket();
+ }
+ }
+
+ public int getIndex(int key){
+ return key % bucketSize;
+ }
+
+ public void add(int key) {
+ int bucketIndex=this.getIndex(key);
+ this.buckets[bucketIndex].insert(key);
+ }
+
+ public void remove(int key) {
+ int bucketIndex=this.getIndex(key);
+ this.buckets[bucketIndex].remove(key);
+ }
+
+ public boolean contains(int key) {
+ int bucketIndex=this.getIndex(key);
+ return this.buckets[bucketIndex].contains(key);
+ }
+}
+
+/**
+ * Your amaan29.MyHashSet object will be instantiated and called as such:
+ * amaan29.MyHashSet obj = new amaan29.MyHashSet();
+ * obj.add(key);
+ * obj.remove(key);
+ * boolean param_3 = obj.contains(key);
+ */
\ No newline at end of file
diff --git a/out/production/Design-1/.idea/.gitignore b/out/production/Design-1/.idea/.gitignore
new file mode 100644
index 00000000..26d33521
--- /dev/null
+++ b/out/production/Design-1/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/out/production/Design-1/.idea/Design-1.iml b/out/production/Design-1/.idea/Design-1.iml
new file mode 100644
index 00000000..b107a2dd
--- /dev/null
+++ b/out/production/Design-1/.idea/Design-1.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/Design-1/.idea/codeStyles/Project.xml b/out/production/Design-1/.idea/codeStyles/Project.xml
new file mode 100644
index 00000000..919ce1f1
--- /dev/null
+++ b/out/production/Design-1/.idea/codeStyles/Project.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/Design-1/.idea/codeStyles/codeStyleConfig.xml b/out/production/Design-1/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 00000000..a55e7a17
--- /dev/null
+++ b/out/production/Design-1/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/Design-1/.idea/misc.xml b/out/production/Design-1/.idea/misc.xml
new file mode 100644
index 00000000..f5bd2dfe
--- /dev/null
+++ b/out/production/Design-1/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/Design-1/.idea/modules.xml b/out/production/Design-1/.idea/modules.xml
new file mode 100644
index 00000000..cc065d00
--- /dev/null
+++ b/out/production/Design-1/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/Design-1/.idea/vcs.xml b/out/production/Design-1/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/out/production/Design-1/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/out/production/Design-1/MinStack.class b/out/production/Design-1/MinStack.class
new file mode 100644
index 00000000..ce83615d
Binary files /dev/null and b/out/production/Design-1/MinStack.class differ
diff --git a/out/production/Design-1/README.md b/out/production/Design-1/README.md
new file mode 100644
index 00000000..6907f832
--- /dev/null
+++ b/out/production/Design-1/README.md
@@ -0,0 +1,13 @@
+Explain your approach in **three sentences only** at top of your code
+
+# Design-1
+
+## Problem 1:(https://leetcode.com/problems/design-hashset/)
+
+
+
+## Problem 2:
+Design MinStack (https://leetcode.com/problems/min-stack/)
+
+
+