์šฐ๊ทœ์ด์ธ์šฐ์œค
Eager To Learn ๐ŸŒŒ
์šฐ๊ทœ์ด์ธ์šฐ์œค
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ๐Ÿก ํ™ˆ
  • ๐Ÿš€ ๊นƒํ—ˆ๋ธŒ
  • โ›… ํƒœ๊ทธ ํด๋ผ์šฐ๋“œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (217)
    • ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป PS (170)
      • JAVA (82)
      • MYSQL (1)
      • Docker (2)
      • PYTHON (24)
      • LeetCode 150 (39)
      • Algorithm ๊ธฐ๋ฒ• (1)
      • ๋ฐ”ํ‚น๋… (21)
    • ๋ธ”๋กœ๊ทธ ์ด์‚ฌ (0)
    • Error (1)
    • CS (15)
      • DataBase (2)
      • OS (7)
      • Network (1)
      • Spring (1)
      • ์ž๋ฃŒ๊ตฌ์กฐ (3)
      • Java (1)
    • Learned (7)
      • Spring (7)
    • ๊ฐœ๋ฐœ์„œ์  (15)
      • ๊ฐ€์ƒ ๋ฉด์ ‘ ์‚ฌ๋ก€๋กœ ๋ฐฐ์šฐ๋Š” ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๊ธฐ์ดˆ (1)
      • ์˜ค๋ธŒ์ ํŠธ - ์กฐ์˜ํ˜ธ (7)
      • ์นœ์ ˆํ•œ SQL ํŠœ๋‹ (7)
    • ํšŒ๊ณ  (2)
hELLO ยท Designed By ์ •์ƒ์šฐ.
์šฐ๊ทœ์ด์ธ์šฐ์œค
๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป PS/LeetCode 150

[Java] 80. Remove Duplicates from Sorted Array II

๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป PS/LeetCode 150

[Java] 80. Remove Duplicates from Sorted Array II

2023. 8. 23. 13:58

๋ฌธ์ œ ํŒŒ์•…

nums ๋Š” ๋น„๋‚ด๋ฆผ์ฐจ์ˆœ ์ •์ˆ˜ ๋ฐฐ์—ด์ด๋ฉฐ, ์ตœ๋Œ€ 2๊ฐœ๊นŒ์ง€ ์ค‘๋ณต๋  ์ˆ˜ ์žˆ๋„๋ก ๋‚˜๋จธ์ง€ ์ค‘๋ณต์€ ์ œ๊ฑฐํ•ด์•ผํ•œ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ , ์ƒ๋Œ€์ ์ธ ์œ„์น˜๋ฅผ ์œ ์ง€ํ•ด์•ผํ•œ๋‹ค.

 

์ฃผ์–ด์ง„ ์กฐ๊ฑด์— ๋งž๊ฒŒ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•œ ์›์†Œ์˜ ๊ฐœ์ˆ˜ k๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผํ•œ๋‹ค.

 

nums ๋ฐฐ์—ด ์™ธ ๋‹ค๋ฅธ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋œ๋‹ค.

 


ํ’€์ด

 

1๏ธโƒฃ ํฌ์ธํ„ฐ ๋ฐฉ์‹

 

nums ๋ฐฐ์—ด๋งŒ ์‚ฌ์šฉํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์—, nums ๋ฐฐ์—ด์˜ ์›์†Œ๋“ค์„ ๊ฐฑ์‹ ํ•ด๋‚˜๊ฐ€๋ฉฐ ์ค‘๋ณต์„ ์ตœ๋Œ€ 2๊ฐœ๊นŒ์ง€ ํ—ˆ์šฉํ•˜๋ฉด์„œ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•ด์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.

 

๋จผ์ €, ๊ฐฑ์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ์กฐ๊ฑด์ด ๋ญ”์ง€ ์ƒ๊ฐํ•ด๋ดค๋‹ค.

 

  1. ์›์†Œ๊ฐ€ ๋‹ฌ๋ผ์ง€๋Š” ์ˆœ๊ฐ„ ๊ฐฑ์‹ ํ•˜๊ณ  ํฌ์ธํ„ฐ๋ฅผ ์ด๋™
  2. ์›์†Œ๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ
    1. ์ค‘๋ณต๋œ ์›์†Œ๊ฐ€ 2๊ฐœ๊นŒ์ง€๋Š” ํ—ˆ์šฉ๋˜๋ฏ€๋กœ, 2๊ฐœ๊นŒ์ง€๋Š” ๊ฐฑ์‹ ํ•˜๊ณ  ํฌ์ธํ„ฐ๋ฅผ ์ด๋™
    2. ๋‹จ, 3๊ฐœ๋ถ€ํ„ฐ๋Š” ๊ฐฑ์‹ ํ•˜์ง€ ์•Š๊ณ  ์›์†Œ๊ฐ€ ๋‹ฌ๋ผ์ง€๋Š” ์ˆœ๊ฐ„๊นŒ์ง€ ํฌ์ธํ„ฐ๋ฅผ ์›€์ง์ผ ์ˆ˜ ์—†์Œ

 

์œ„ ์กฐ๊ฑด์„ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด๊ณ ๋‚˜์„œ, ์ฝ”๋“œ๋กœ ๊ตฌํ˜„์„ ํ•ด๋ณด์•˜๋‹ค.

 

class Solution {
    public int removeDuplicates(int[] nums) {
        int idx = 1;
        int cnt = 1;
        for(int i=1;i<nums.length;i++){
        	// ์›์†Œ๊ฐ€ ๊ฐ™์€ ๊ฒฝ์šฐ
            if(nums[i-1]==nums[i]){
            	// ์นด์šดํŠธ ์ฆ๊ฐ€
                cnt++;
                
                // 2๊ฐœ๊นŒ์ง€๋Š” ํ—ˆ์šฉํ•˜๋ฏ€๋กœ ๊ฐฑ์‹  ํ›„ ํฌ์ธํ„ฐ ์ฆ๊ฐ€
                if(cnt<=2){
                    nums[idx++] = nums[i];
                }
            }else{
            
            	//์›์†Œ๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ ์นด์šดํŠธ๋ฅผ 1๋กœ ์ดˆ๊ธฐํ™” ํ›„, ๊ฐฑ์‹ 
                cnt=1;
                nums[idx++] = nums[i];
            }
        }

        return idx;
    }
}

 

๊ฒฐ๊ณผ

 


๐Ÿ“– ํšŒ๊ณ 

์ฒ˜์Œ์—๋Š” ๋จธ๋ฆฟ์†์ด ์ž˜ ์ •๋ฆฌ๋˜์ง€ ์•Š์•„์„œ ํ’€์ด๊ฐ€ ๋– ์˜ค๋ฅด์ง€ ์•Š์•˜๋Š”๋ฐ

 

ํ•ด๋‹ต์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ์กฐ๊ฑด์„ ๋จผ์ € ๊ผผ๊ผผํžˆ ์‚ดํŽด๋ณด๊ณ 

 

์ด๋ฅผ ์ฝ”๋“œ๋กœ์„œ ์ •ํ™•ํžˆ ๊ตฌํ˜„ํ•ด๋‚ด๋‹ˆ Pass ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

 

  • ๋ฌธ์ œ ํŒŒ์•…
  • ํ’€์ด
  • 1๏ธโƒฃ ํฌ์ธํ„ฐ ๋ฐฉ์‹
  • ๊ฒฐ๊ณผ
  • ๐Ÿ“– ํšŒ๊ณ 
'๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป PS/LeetCode 150' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Java] 189. Rotate Array
  • [Java] 169. Majority Element
  • [Java] 26. Remove Duplicates from Sorted Array
  • [Java] 27. Remove Element
์šฐ๊ทœ์ด์ธ์šฐ์œค
์šฐ๊ทœ์ด์ธ์šฐ์œค
๊ฐœ๋ฐœ์ž ๊ฟˆ๋‚˜๋ฌด

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.