File tree Expand file tree Collapse file tree 5 files changed +158
-0
lines changed
longest-consecutive-sequence Expand file tree Collapse file tree 5 files changed +158
-0
lines changed Original file line number Diff line number Diff line change 1+ import java .util .HashMap ;
2+ import java .util .Map ;
3+
4+ public class runnz121 {
5+
6+ public class Solution {
7+
8+ public boolean containsDuplicate (int [] nums ) {
9+
10+ Map <Integer , Integer > countMap = new HashMap <>();
11+
12+ for (int i = 0 ; i < nums .length ; i ++) {
13+ countMap .put (nums [i ], countMap .getOrDefault (nums [i ] , 0 ) + 1 );
14+ }
15+
16+ for (Map .Entry <Integer , Integer > map : countMap .entrySet ()) {
17+ if (map .getValue () >= 2 ) {
18+ return true ;
19+ }
20+ }
21+
22+ return false ;
23+ }
24+ }
25+ }
Original file line number Diff line number Diff line change 1+ import java .util .Arrays ;
2+
3+ public class runnz121 {
4+
5+ public class Solution {
6+ public int rob (int [] nums ) {
7+
8+ if (nums .length == 1 ) {
9+ return nums [0 ];
10+ }
11+
12+ int [] dp = new int [nums .length ];
13+
14+ dp [0 ] = nums [0 ];
15+ dp [1 ] = Math .max (nums [1 ], nums [0 ]);
16+ for (int i = 2 ; i < nums .length ; i ++) {
17+ int comp1 = Math .max (nums [i ] + dp [i - 2 ], dp [i ] + nums [i - 2 ]);
18+ dp [i ] = Math .max (comp1 , dp [i - 1 ]);
19+ }
20+
21+ return Arrays .stream (dp ).max ().stream ().findFirst ().orElse (Math .max (dp [0 ], dp [1 ]));
22+ }
23+ }
24+ }
Original file line number Diff line number Diff line change 1+ import java .util .*;
2+ import java .util .stream .Collectors ;
3+
4+ public class runnz121 {
5+
6+ public class Solution {
7+
8+ public int longestConsecutive (int [] nums ) {
9+
10+ if (nums .length == 0 ) {
11+ return 0 ;
12+ }
13+
14+ Set <Integer > collect = Arrays .stream (nums ).boxed ().collect (Collectors .toSet ());
15+ int [] array = collect .stream ().mapToInt (Integer ::intValue ).toArray ();
16+
17+ List <Integer > minus = new ArrayList <>();
18+ List <Integer > plus = new ArrayList <>();
19+
20+ for (int i = 0 ; i < collect .size (); i ++) {
21+
22+ if (array [i ] < 0 ) {
23+ minus .add (array [i ]);
24+ } else {
25+ plus .add (array [i ]);
26+ }
27+ }
28+
29+ Collections .sort (minus );
30+ Collections .sort (plus );
31+
32+ List <Integer > total = new ArrayList <>();
33+ total .addAll (minus );
34+ total .addAll (plus );
35+
36+ int ans = 0 ;
37+ int subAns = 1 ;
38+ for (int i = 0 ; i < total .size () - 1 ; i ++) {
39+ if (total .get (i + 1 ) == total .get (i ) + 1 ) {
40+ subAns += 1 ;
41+ } else {
42+ ans = Math .max (subAns , ans );
43+ subAns = 1 ;
44+ }
45+ }
46+
47+ ans = Math .max (ans , subAns );
48+
49+ return ans ;
50+ }
51+ }
52+ }
Original file line number Diff line number Diff line change 1+ import java .util .HashMap ;
2+ import java .util .Map ;
3+ import java .util .PriorityQueue ;
4+
5+ public class runnz121 {
6+
7+ public class Solution {
8+
9+ public int [] topKFrequent (int [] nums , int k ) {
10+
11+ Map <Integer , Integer > map = new HashMap <>();
12+
13+ for (int i = 0 ; i < nums .length ; i ++) {
14+ map .put (nums [i ], map .getOrDefault (nums [i ], 0 ) + 1 );
15+ }
16+
17+ PriorityQueue <Integer > maxPq = new PriorityQueue <>(
18+ (a , b ) -> map .get (b ) - map .get (a )
19+ );
20+
21+ maxPq .addAll (map .keySet ());
22+
23+ int [] result = new int [k ];
24+
25+ for (int i = 0 ; i < k ; i ++) {
26+ result [i ] = maxPq .poll ();
27+ }
28+ return result ;
29+ }
30+ }
31+ }
Original file line number Diff line number Diff line change 1+ import java .util .HashMap ;
2+ import java .util .Map ;
3+
4+ public class runnz121 {
5+
6+ public class Solution {
7+
8+ public int [] twoSum (int [] nums , int target ) {
9+
10+ Map <Integer , Integer > map = new HashMap <>();
11+
12+ for (int i = 0 ; i < nums .length ; i ++) {
13+
14+ int remain = target - nums [i ];
15+
16+ if (map .containsKey (remain )) {
17+ return new int []{map .get (remain ), i };
18+ }
19+
20+ map .put (nums [i ], i );
21+ }
22+
23+ return new int []{0 , 0 };
24+ }
25+ }
26+ }
You can’t perform that action at this time.
0 commit comments