dev-resources.site
for different kinds of informations.
Leetcode 75. Sort Colors
Published at
1/11/2025
Categories
java
sorting
algorithms
leetcode
Author
devn913
Author
7 person written this
devn913
open
Intuition
The basic intuition comes from sorting.
Approach
In the naive approach, we can sort the array using inbuilt sorting function. The time complexity will be O(N*log(N))
.
- Optimize: Since we are sorting only three numbers, we can use the concept of counting sort. Keep track of number of zeros and number of ones in the array.
Complexity
-
Time complexity:
O(N)
-
Space complexity:
O(1)
Code
class Solution {
public void sortColors(int[] nums) {
int countZero = 0;
int countOne = 0;
for(int num: nums){
switch(num){
case 0:
countZero++;
break;
case 1:
countOne++;
}
}
int currentIndex = -1;
while(0<countZero--){
nums[++currentIndex] = 0;
// countZero--;
}
while(0<countOne--){
nums[++currentIndex] = 1;
// countOne--;
}
while(currentIndex<nums.length-1){
nums[++currentIndex] = 2;
}
}
}
GitHub repo for more solutions: Git
Leetcode profile: Leetcode: devn007
leetcode Article's
30 articles in total
Neetcode Roadmap Part 1
read article
2429. Minimize XOR
read article
A tΓ©cnica dos dois ponteiros
read article
2657. Find the Prefix Common Array of Two Arrays
read article
Time Complexity, Big-O for Beginners
read article
LeetCode Challenge: 383. Ransom Note - JavaScript Solution π
read article
3223. Minimum Length of String After Operations
read article
Leet code
read article
2116. Check if a Parentheses String Can Be Valid
read article
LeetCode Challenge: 73. Set Matrix Zeroes - JavaScript Solution π
read article
LeetCode Challenge: 290. Word Pattern - JavaScript Solution π
read article
LeetCode Challenge: 205. Isomorphic Strings - JavaScript Solution π
read article
Leetcode: 73 Set Matrix Zeroes
read article
LeetCode Challenge: 36.Valid Sudoku - JavaScript Solution π
read article
Count prefix and suffix I and II
read article
Leetcode Blind 75
read article
Rabin Karp (hashing) String pattern matching
read article
Leetcode β 2942. Find Words Containing Character
read article
Automating Your LeetCode Journey: Building an Enterprise-Grade LeetCode to GitHub Sync System
read article
Understanding the XOR Operator: A Powerful Tool in Computing
read article
Kadane's Algorithm: Leetcode 53 Maximum subarray
read article
1768. Merge Strings Alternately
read article
Find all anagrams in the string[Fixed Window pattern]
read article
No of ways to split Array
read article
Leetcode β 3289. The Two Sneaky Numbers of Digitville
read article
Range sum query 2D - Immutable
read article
Range Sum Query - Immutable
read article
Count vowel strings in ranges
read article
Yay! Reached 1035+ days Daily Coding Streak on Leetcode!
read article
Leetcode 75. Sort Colors
currently reading
Featured ones: