File tree Expand file tree Collapse file tree 5 files changed +80
-0
lines changed
Expand file tree Collapse file tree 5 files changed +80
-0
lines changed Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @return {number }
4+ */
5+ var removeDuplicates = function ( nums ) {
6+ const map = new Map ( ) ;
7+ for ( let i = nums . length - 1 ; i >= 0 ; i -- ) {
8+ if ( map . has ( nums [ i ] ) ) {
9+ if ( map . get ( nums [ i ] ) >= 2 ) {
10+ nums . splice ( i , 1 ) ;
11+ } else {
12+ map . set ( nums [ i ] , map . get ( nums [ i ] ) + 1 ) ;
13+ }
14+ } else {
15+ map . set ( nums [ i ] , 1 ) ;
16+ }
17+ }
18+ return nums . length ;
19+ } ;
Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @return {number }
4+ */
5+ var majorityElement = function ( nums ) {
6+ let ans = nums [ 0 ] ;
7+ let maxCount = 1 ;
8+ const map = new Map ( ) ;
9+ for ( let i = 0 ; i < nums . length ; i ++ ) {
10+ if ( map . has ( nums [ i ] ) ) {
11+ const get = map . get ( nums [ i ] ) ;
12+ map . set ( nums [ i ] , get + 1 ) ;
13+ if ( get >= maxCount && ans !== nums [ i ] ) {
14+ maxCount = get ;
15+ ans = nums [ i ] ;
16+ }
17+ } else {
18+ map . set ( nums [ i ] , 1 ) ;
19+ }
20+ }
21+ return ans ;
22+ } ;
Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @param {number } k
4+ * @return {void } Do not return anything, modify nums in-place instead.
5+ */
6+ var rotate = function ( nums , k ) {
7+ let newK = k % nums . length ;
8+ const spl = nums . splice ( nums . length - newK , newK ) ;
9+ nums . unshift ( ...spl ) ;
10+ return nums ;
11+ } ;
Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @param {number } val
4+ * @return {number }
5+ */
6+ var removeElement = function ( nums , val ) {
7+ for ( let i = nums . length - 1 ; i >= 0 ; i -- ) {
8+ if ( nums [ i ] === val ) {
9+ nums . splice ( i , 1 ) ;
10+ }
11+ }
12+ return nums . length ;
13+ } ;
Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @return {number }
4+ */
5+ var removeDuplicates = function ( nums ) {
6+ const set = new Set ( ) ;
7+ for ( let i = nums . length - 1 ; i >= 0 ; i -- ) {
8+ if ( ! set . has ( nums [ i ] ) ) {
9+ set . add ( nums [ i ] ) ;
10+ } else {
11+ nums . splice ( i , 1 ) ;
12+ }
13+ }
14+ return nums . length ;
15+ } ;
You can’t perform that action at this time.
0 commit comments