์šฐ๊ทœ์ด์ธ์šฐ์œค
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 ์ •์ƒ์šฐ.
์šฐ๊ทœ์ด์ธ์šฐ์œค

Eager To Learn ๐ŸŒŒ

๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป PS/LeetCode 150

[Java] 27. Remove Element

2023. 8. 23. 12:33

๋ฌธ์ œ ํŒŒ์•…

์ •์ˆ˜ ๋ฐฐ์—ด nums์™€ val์ด ์ฃผ์–ด์ง„๋‹ค.

 

๋ฐฐ์—ด nums ์—์„œ val๊ณผ ์ผ์น˜ํ•˜๋Š” ์›์†Œ๋ฅผ ๋ชจ๋‘ ์ œ๊ฑฐํ•ด์•ผํ•œ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  nums ๋ฐฐ์—ด์—์„œ val๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์›์†Œ์˜ ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผํ•œ๋‹ค.

 

์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์›์†Œ์˜ ๊ฐœ์ˆ˜๊ฐ€ k ์ผ ๋•Œ, nums์˜ k๋ฒˆ ์ธ๋ฑ์Šค ๊นŒ์ง€๋Š” val๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์›์†Œ๋“ค๋กœ ์ฑ„์›Œ๋„ฃ์–ด์•ผ ํ•œ๋‹ค.

 


ํ’€์ด

 

1๏ธโƒฃ Arrays.sort() ์‚ฌ์šฉ

 

๋จผ์ €, ๋ฌธ์ œ ์กฐ๊ฑด์„ ๋ณด๋‹ˆ nums ๋ฐฐ์—ด์˜ ์›์†Œ ์ตœ๋Œ“๊ฐ’์€ 50์ž„์„ ์•Œ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

๋”ฐ๋ผ์„œ, nums ๋ฐฐ์—ด์—์„œ val๊ณผ ์ผ์น˜ํ•˜๋Š” ์›์†Œ๋ฅผ 51๋กœ ๋ชจ๋‘ ๋ณ€ํ™˜ํ•ด๋‘๊ณ 

 

์ •๋ ฌ์„ ์ˆ˜ํ–‰ํ•˜๋ฉด, ๋ฐฐ์—ด์˜ ๋’ท๋ถ€๋ถ„์œผ๋กœ ๋ฐ€๋ ค๋‚˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ–ˆ๋‹ค.

 

import java.util.*;
class Solution {
    public int removeElement(int[] nums, int val) {
        int len = nums.length;
        int cnt = 0;
        
        for(int i=0;i<len;i++){
            if(nums[i]==val){
                nums[i] = 51;
                cnt++;
            }
        }

        Arrays.sort(nums);

        return len - cnt;
    }
}

 

๊ฒฐ๊ณผ

 

 

 

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

 

ํฌ์ธํ„ฐ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ฉด, ์ •๋ ฌ์„ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.

 

nums์—์„œ val๊ณผ ์ผ์น˜ํ•˜๋Š” ์ธ๋ฑ์Šค์ธ ๊ฒฝ์šฐ, ํฌ์ธํ„ฐ๋ฅผ ๋ฉˆ์ถ”๊ณ 

 

์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์—๋งŒ ๊ฐ’์„ ๊ฐฑ์‹ ํ•˜๊ณ  ํฌ์ธํ„ฐ๋ฅผ ์ด๋™์‹œํ‚ค๋ฉด ๋œ๋‹ค.

 

import java.util.*;
class Solution {
    public int removeElement(int[] nums, int val) {
        int idx = 0;

        for(int i=0;i<nums.length;i++){
            if(nums[i]!=val){
                nums[idx++] = nums[i];
            }
        }

        return idx;
    }
}

 

 

๊ฒฐ๊ณผ

 


 

๐Ÿ“– ํšŒ๊ณ 

 

๋‘๋ฒˆ์งธ ํ’€์ด ๋ฐฉ์‹์˜ ๊ฒฝ์šฐ, ์ง๊ด€์ ์œผ๋กœ ๋– ์˜ฌ๋ฆฌ์ง€ ๋ชปํ–ˆ๋‹ค.

 

๋ฐฐ์—ด์˜ ๊ธธ์ด๊ฐ€ ํ•œ์ •์ ์ด๋ผ, ์ •๋ ฌ์„ ์‚ฌ์šฉํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ์ง€๋งŒ.

 

๋ฐฐ์—ด ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ, ๋Œ€๋ถ€๋ถ„ O(N) ์˜ ํ’€์ด ๋ฐฉ๋ฒ•์€ ํฌ์ธํ„ฐ๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ˆ

 

ํ•œ๋ฒˆ์ฏค์€ ํฌ์ธํ„ฐ ํ’€์ด ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฏผํ•ด๋ด์•ผ๊ฒ ๋‹ค.

    '๐Ÿ‘จ๐Ÿป‍๐Ÿ’ป PS/LeetCode 150' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Java] 169. Majority Element
    • [Java] 80. Remove Duplicates from Sorted Array II
    • [Java] 26. Remove Duplicates from Sorted Array
    • [Java] 88. Merge Sorted Array
    ์šฐ๊ทœ์ด์ธ์šฐ์œค
    ์šฐ๊ทœ์ด์ธ์šฐ์œค
    ๊ฐœ๋ฐœ์ž ๊ฟˆ๋‚˜๋ฌด

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