개발 일지
26. Remove Duplicates from Sorted Array (정렬된 배열에서 중복 제거) C# 본문
26. Remove Duplicates from Sorted Array (정렬된 배열에서 중복 제거) C#
포카리tea 2022. 11. 16. 00:07Given a string s of lower and upper case English letters.
A good string is a string which doesn't have two adjacent characters s[i] and s[i + 1] where:
- 0 <= i <= s.length - 2
- s[i] is a lower-case letter and s[i + 1] is the same letter but in upper-case or vice-versa.
To make the string good, you can choose two adjacent characters that make the string bad and remove them. You can keep doing this until the string becomes good.
Return the string after making it good. The answer is guaranteed to be unique under the given constraints.
Notice that an empty string is also good.
내림차순으로 정렬된 정수 배열 번호가 주어지면 각 고유 요소가 한 번만 나타나도록 중복 항목을 제자리에서 제거합니다. 요소의 상대적 순서는 동일하게 유지되어야 합니다.
일부 언어에서는 배열의 길이를 변경할 수 없으므로 결과를 배열 nums의 첫 번째 부분에 배치해야 합니다. 좀 더 형식저으로, 중복을 제거한 후 k요소가 있으면 nums의 처음 k 요소가 최종 결과를 보유해야 합니다. 처음 k개 요소를 넘어 무엇을 나겨두는지는 주요하지 않습니다.
- nums의 처음 k 슬롯에 최종 결과를 배치한 후 k를 반환합니다.
- 다른 배열에 추가 공간을 할당하지 마세요. O(1)의 추가 메모리를 사용하고 제자리에서 입력 배열을 수정하여 이 작업을 수행해야 합니다.
사용자 정의 심판:
심판은 다음 코드로 솔루션을 테스트합니다.
예시 1:
입력: nums = [1, 1, 2]
출력: 2, nums = [1, 2, _]
설명: 함수는 k = 2를 반환해야 하며 nums 의 처음 두 요소는 각각 1과 2입니다.
반환된 k 뒤에 무엇을 남겨두어도 상관 없습니다. (따라서 밑줄입니다.)
예시 2:
입력: nums = [0, 0, 1, 1, 1, 2, 2, 3, 3, 4]
출력: 5, nums = [0, 1, 2, 3, 4, _, _, _, _, _]
설명: 함수는 k = 5를 반환해야 하며, 숫자의 처음 5개 요소는 각각 0, 1, 2, 3 및 4입니다.
반환된 k를 초과하여 무엇을 남겨도 상관 없습니다. (따라서 밑줄입니다.)
조건:
- 1 <= nums.length <= 3 * 104
- -100 <= nums[i] <= 100
- nums는 내림차순으로 정렬됩니다.
정답:
public class Solution {
public int RemoveDuplicates(int[] nums) {
int count = 1;
for (int i = 1; i < nums.Length; i++)
{
if(nums[i] != nums[i-1])
{
nums[count] = nums[i];
count += 1;
}
}
return count;
}
}
해설: i번째 배열의 값과 i - 1 배열의 값을 비교하여 다르다면 count위치의 배열과 교체를 반복하여 모든 배열을 확인했을 때 count값을 return 해주었습니다.
'코딩 테스트 > LeetCode' 카테고리의 다른 글
48. Rotate Image (이미지 회전) C# (0) | 2022.11.21 |
---|---|
387. First Unique Character in a String (문자열의 첫 번째 고유 문자) C# (0) | 2022.11.18 |
1544. Make The String Great (문자열 다듬기) C# (0) | 2022.11.14 |
345. Reverse Vowels of a String (문자열의 모음 뒤집기) C# (0) | 2022.11.07 |
766. Toeplitz Matrix (퇴플리츠 행렬) C# (0) | 2022.11.03 |