அல்கோரிதம்weighted interval scheduling
Weighted Interval Scheduling — எடையிட்ட இடைவெளி திட்டமிடல்
TT
Testlaa Team
May 14, 2026•1 min read
முடிவு நேர வரிசை — முன்னோடி binary search.
உண்மை உலகில் இது ஏன் முக்கியம்?
அறை; CPU.
மையக் கருத்து (மாணவர்களுக்கான விளக்கம்)
p(i) binary search.
Pythonில் முயற்சி செய்வோம்
def weighted_interval(intervals: list[tuple[int, int, int]]) -> int:
intervals = sorted(intervals, key=lambda x: x[1])
ends = [e for _, e, _ in intervals]
import bisect
dp = [0]
best = 0
for s, e, w in intervals:
j = bisect.bisect_right(ends, s) - 1
take = w + (dp[j + 1] if j >= 0 else 0)
best = max(best, take)
dp.append(best)
return best
print(weighted_interval([(1, 3, 5), (2, 5, 6), (4, 6, 5), (6, 7, 4)]))
அடிக்கடி நேரும் தவறுகள்
- வரிசை.
- சம முடிவு.
முக்கியச் சுருக்கக் குறிப்புகள்
- நேர சுருக்கம்.
Tags:
Dynamic programmingPythonமாணவர்கள்
