Task Scheduler in Java: Explanation & Practice
Find minimum time to complete all tasks with cooldown
Problem summary
Tasks need n intervals cooldown between same tasks. Find minimum intervals to complete all.
Starter code
import java.util.*;
public class Main {
public static void main(String[] args) {
char[] tasks = {'A', 'A', 'A', 'B', 'B', 'B'};
int n = 2; // Test case 1
// Find minimum intervals
// Print: Minimum intervals: <count>
}
}Expected output and test cases
- A->B->idle->A->B->idle->A->B
Minimum intervals: 8
- No idle needed with n=0
Minimum intervals: 6
Hints
- Count frequency of each task
- Most frequent task determines minimum
- Formula: (maxFreq-1)*(n+1) + countOfMaxFreq
Related Collections exercises
Practice all Collections exercises · Run this idea in the Java compiler