Skip to content

Commit a47bf90

Browse files
committed
week1 study
1 parent 4b7a233 commit a47bf90

6 files changed

Lines changed: 198 additions & 0 deletions

File tree

contains-duplicate/xeulbn.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import java.util.*;
2+
3+
class Solution {
4+
public boolean containsDuplicate(int[] nums) {
5+
Set<Integer> numberCheck = new HashSet<>();
6+
7+
for(int num : nums){
8+
if(numberCheck.contains(num)){
9+
return true;
10+
}
11+
numberCheck.add(num);
12+
}
13+
return false;
14+
}
15+
}

house-robber/xeulbn.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import java.util.*;
2+
3+
class Solution {
4+
5+
public int rob(int[] nums) {
6+
if (nums.length == 1) {
7+
return nums[0];
8+
}
9+
10+
int[] dp = new int[nums.length];
11+
12+
dp[0] = nums[0];
13+
dp[1] = Math.max(nums[0], nums[1]);
14+
15+
for (int i = 2; i < nums.length; i++) {
16+
dp[i] = Math.max(dp[i - 1], dp[i - 2] + nums[i]);
17+
}
18+
19+
return dp[nums.length - 1];
20+
}
21+
}

leetcode-study.iml

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<module type="JAVA_MODULE" version="4">
3+
<component name="NewModuleRootManager" inherit-compiler-output="true">
4+
<exclude-output />
5+
<content url="file://$MODULE_DIR$">
6+
<sourceFolder url="file://$MODULE_DIR$/3sum" isTestSource="false" />
7+
<sourceFolder url="file://$MODULE_DIR$/alien-dictionary" isTestSource="false" />
8+
<sourceFolder url="file://$MODULE_DIR$/best-time-to-buy-and-sell-stock" isTestSource="false" />
9+
<sourceFolder url="file://$MODULE_DIR$/binary-tree-level-order-traversal" isTestSource="false" />
10+
<sourceFolder url="file://$MODULE_DIR$/binary-tree-maximum-path-sum" isTestSource="false" />
11+
<sourceFolder url="file://$MODULE_DIR$/climbing-stairs" isTestSource="false" />
12+
<sourceFolder url="file://$MODULE_DIR$/clone-graph" isTestSource="false" />
13+
<sourceFolder url="file://$MODULE_DIR$/coin-change" isTestSource="false" />
14+
<sourceFolder url="file://$MODULE_DIR$/combination-sum" isTestSource="false" />
15+
<sourceFolder url="file://$MODULE_DIR$/construct-binary-tree-from-preorder-and-inorder-traversal" isTestSource="false" />
16+
<sourceFolder url="file://$MODULE_DIR$/container-with-most-water" isTestSource="false" />
17+
<sourceFolder url="file://$MODULE_DIR$/contains-duplicate" isTestSource="false" />
18+
<sourceFolder url="file://$MODULE_DIR$/counting-bits" isTestSource="false" />
19+
<sourceFolder url="file://$MODULE_DIR$/course-schedule" isTestSource="false" />
20+
<sourceFolder url="file://$MODULE_DIR$/decode-ways" isTestSource="false" />
21+
<sourceFolder url="file://$MODULE_DIR$/design-add-and-search-words-data-structure" isTestSource="false" />
22+
<sourceFolder url="file://$MODULE_DIR$/encode-and-decode-strings" isTestSource="false" />
23+
<sourceFolder url="file://$MODULE_DIR$/find-median-from-data-stream" isTestSource="false" />
24+
<sourceFolder url="file://$MODULE_DIR$/find-minimum-in-rotated-sorted-array" isTestSource="false" />
25+
<sourceFolder url="file://$MODULE_DIR$/graph-valid-tree" isTestSource="false" />
26+
<sourceFolder url="file://$MODULE_DIR$/group-anagrams" isTestSource="false" />
27+
<sourceFolder url="file://$MODULE_DIR$/house-robber" isTestSource="false" />
28+
<sourceFolder url="file://$MODULE_DIR$/house-robber-ii" isTestSource="false" />
29+
<sourceFolder url="file://$MODULE_DIR$/implement-trie-prefix-tree" isTestSource="false" />
30+
<sourceFolder url="file://$MODULE_DIR$/insert-interval" isTestSource="false" />
31+
<sourceFolder url="file://$MODULE_DIR$/invert-binary-tree" isTestSource="false" />
32+
<sourceFolder url="file://$MODULE_DIR$/jump-game" isTestSource="false" />
33+
<sourceFolder url="file://$MODULE_DIR$/kth-smallest-element-in-a-bst" isTestSource="false" />
34+
<sourceFolder url="file://$MODULE_DIR$/linked-list-cycle" isTestSource="false" />
35+
<sourceFolder url="file://$MODULE_DIR$/longest-common-subsequence" isTestSource="false" />
36+
<sourceFolder url="file://$MODULE_DIR$/longest-consecutive-sequence" isTestSource="false" />
37+
<sourceFolder url="file://$MODULE_DIR$/longest-increasing-subsequence" isTestSource="false" />
38+
<sourceFolder url="file://$MODULE_DIR$/longest-palindromic-substring" isTestSource="false" />
39+
<sourceFolder url="file://$MODULE_DIR$/longest-repeating-character-replacement" isTestSource="false" />
40+
<sourceFolder url="file://$MODULE_DIR$/longest-substring-without-repeating-characters" isTestSource="false" />
41+
<sourceFolder url="file://$MODULE_DIR$/lowest-common-ancestor-of-a-binary-search-tree" isTestSource="false" />
42+
<sourceFolder url="file://$MODULE_DIR$/maximum-depth-of-binary-tree" isTestSource="false" />
43+
<sourceFolder url="file://$MODULE_DIR$/maximum-product-subarray" isTestSource="false" />
44+
<sourceFolder url="file://$MODULE_DIR$/maximum-subarray" isTestSource="false" />
45+
<sourceFolder url="file://$MODULE_DIR$/meeting-rooms" isTestSource="false" />
46+
<sourceFolder url="file://$MODULE_DIR$/meeting-rooms-ii" isTestSource="false" />
47+
<sourceFolder url="file://$MODULE_DIR$/merge-intervals" isTestSource="false" />
48+
<sourceFolder url="file://$MODULE_DIR$/merge-k-sorted-lists" isTestSource="false" />
49+
<sourceFolder url="file://$MODULE_DIR$/merge-two-sorted-lists" isTestSource="false" />
50+
<sourceFolder url="file://$MODULE_DIR$/minimum-window-substring" isTestSource="false" />
51+
<sourceFolder url="file://$MODULE_DIR$/missing-number" isTestSource="false" />
52+
<sourceFolder url="file://$MODULE_DIR$/non-overlapping-intervals" isTestSource="false" />
53+
<sourceFolder url="file://$MODULE_DIR$/number-of-1-bits" isTestSource="false" />
54+
<sourceFolder url="file://$MODULE_DIR$/number-of-connected-components-in-an-undirected-graph" isTestSource="false" />
55+
<sourceFolder url="file://$MODULE_DIR$/number-of-islands" isTestSource="false" />
56+
<sourceFolder url="file://$MODULE_DIR$/pacific-atlantic-water-flow" isTestSource="false" />
57+
<sourceFolder url="file://$MODULE_DIR$/palindromic-substrings" isTestSource="false" />
58+
<sourceFolder url="file://$MODULE_DIR$/product-of-array-except-self" isTestSource="false" />
59+
<sourceFolder url="file://$MODULE_DIR$/remove-nth-node-from-end-of-list" isTestSource="false" />
60+
<sourceFolder url="file://$MODULE_DIR$/reorder-list" isTestSource="false" />
61+
<sourceFolder url="file://$MODULE_DIR$/reverse-bits" isTestSource="false" />
62+
<sourceFolder url="file://$MODULE_DIR$/reverse-linked-list" isTestSource="false" />
63+
<sourceFolder url="file://$MODULE_DIR$/rotate-image" isTestSource="false" />
64+
<sourceFolder url="file://$MODULE_DIR$/same-tree" isTestSource="false" />
65+
<sourceFolder url="file://$MODULE_DIR$/search-in-rotated-sorted-array" isTestSource="false" />
66+
<sourceFolder url="file://$MODULE_DIR$/serialize-and-deserialize-binary-tree" isTestSource="false" />
67+
<sourceFolder url="file://$MODULE_DIR$/set-matrix-zeroes" isTestSource="false" />
68+
<sourceFolder url="file://$MODULE_DIR$/spiral-matrix" isTestSource="false" />
69+
<sourceFolder url="file://$MODULE_DIR$/subtree-of-another-tree" isTestSource="false" />
70+
<sourceFolder url="file://$MODULE_DIR$/sum-of-two-integers" isTestSource="false" />
71+
<sourceFolder url="file://$MODULE_DIR$/top-k-frequent-elements" isTestSource="false" />
72+
<sourceFolder url="file://$MODULE_DIR$/two-sum" isTestSource="false" />
73+
<sourceFolder url="file://$MODULE_DIR$/unique-paths" isTestSource="false" />
74+
<sourceFolder url="file://$MODULE_DIR$/valid-anagram" isTestSource="false" />
75+
<sourceFolder url="file://$MODULE_DIR$/valid-palindrome" isTestSource="false" />
76+
<sourceFolder url="file://$MODULE_DIR$/valid-parentheses" isTestSource="false" />
77+
<sourceFolder url="file://$MODULE_DIR$/validate-binary-search-tree" isTestSource="false" />
78+
<sourceFolder url="file://$MODULE_DIR$/word-break" isTestSource="false" />
79+
<sourceFolder url="file://$MODULE_DIR$/word-search" isTestSource="false" />
80+
<sourceFolder url="file://$MODULE_DIR$/word-search-ii" isTestSource="false" />
81+
</content>
82+
<orderEntry type="inheritedJdk" />
83+
<orderEntry type="sourceFolder" forTests="false" />
84+
</component>
85+
</module>
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import java.util.*;
2+
3+
class Solution {
4+
public int longestConsecutive(int[] nums) {
5+
Set<Integer> set = new HashSet<>();
6+
7+
for (int num : nums) {
8+
set.add(num);
9+
}
10+
11+
int maxLength = 0;
12+
13+
for (int num : set) {
14+
if (!set.contains(num - 1)) {
15+
int currentNum = num;
16+
int currentLength = 1;
17+
18+
while (set.contains(currentNum + 1)) {
19+
currentNum++;
20+
currentLength++;
21+
}
22+
23+
maxLength = Math.max(maxLength, currentLength);
24+
}
25+
}
26+
27+
return maxLength;
28+
}
29+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import java.util.*;
2+
3+
class Solution {
4+
public int[] topKFrequent(int[] nums, int k) {
5+
Map<Integer,Integer> countMap = new HashMap<>();
6+
7+
for(int i=0;i<nums.length;i++){
8+
countMap.put(nums[i],countMap.getOrDefault(nums[i],0)+1);
9+
}
10+
PriorityQueue<Integer> pq = new PriorityQueue<>(
11+
(a,b)-> countMap.get(a) - countMap.get(b)
12+
);
13+
14+
for(int num: countMap.keySet()){
15+
pq.offer(num);
16+
17+
if(pq.size()>k){
18+
pq.poll();
19+
}
20+
}
21+
22+
int[] answer = new int[k];
23+
24+
for (int i = 0; i < k; i++) {
25+
answer[i] = pq.poll();
26+
}
27+
28+
return answer;
29+
30+
}
31+
}

two-sum/xeulbn.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import java.util.*;
2+
3+
class Solution {
4+
public int[] twoSum(int[] nums, int target) {
5+
Map<Integer, Integer> numIndexMap = new HashMap<>();
6+
7+
for (int i=0; i<nums.length; i++) {
8+
int need = target - nums[i];
9+
if (numIndexMap.containsKey(need)) {
10+
return new int[]{numIndexMap.get(need), i};
11+
}
12+
numIndexMap.put(nums[i], i);
13+
}
14+
15+
return new int[]{};
16+
}
17+
}

0 commit comments

Comments
 (0)