அல்கோரிதம்backtracking subsets
Generating Subsets using Backtracking — அடிப்படை
TT
Testlaa Team
May 14, 2026•1 min read
துணைக்கணம் — சேர்/விடு; 2^n இலைகள்.
உண்மை உலகில் இது ஏன் முக்கியம்?
புதிர்; கட்டுப்பாட்டு தீர்வி; நேர்காணல் — நிலை, சுயமுறை, மீளமைப்பு.
மையக் கருத்து (மாணவர்களுக்கான விளக்கம்)
நகல்: வரிசை + அண்டை தவிர்ப்பு.
Pythonில் முயற்சி செய்வோம்
def subsets_dup(nums: list[int]) -> list[list[int]]:
nums.sort()
res: list[list[int]] = []
def dfs(i: int, path: list[int]) -> None:
if i == len(nums):
res.append(path.copy())
return
path.append(nums[i])
dfs(i + 1, path)
path.pop()
while i + 1 < len(nums) and nums[i + 1] == nums[i]:
i += 1
dfs(i + 1, path)
dfs(0, [])
return res
print(subsets_dup([1, 2, 2]))
பொதுவான தவறுகள்
- கூடுதல் வெற்று துணைக்கணம்.
- முடிவு நகல்.
முக்கிய பாடங்கள்
- DFS நேர்காணல் தெளிவு.
path.copy().
Tags:
Recursion & backtrackingPythonமாணவர்கள்
