அல்கோரிதம்swap backtracking
Swap-Based Backtracking — அடிப்படை
TT
Testlaa Team
May 14, 2026•1 min read
இடமாற்று மீள்சுழல் — i↔j≥i; வேறு மர வடிவம்.
உண்மை உலகில் இது ஏன் முக்கியம்?
புதிர்; கட்டுப்பாட்டு தீர்வி; நேர்காணல் — நிலை, சுயமுறை, மீளமைப்பு.
மையக் கருத்து (மாணவர்களுக்கான விளக்கம்)
சமச்சீர் இடமாற்று மீட்டமை.
Pythonில் முயற்சி செய்வோம்
def permute_swap(nums: list[int]) -> list[list[int]]:
res: list[list[int]] = []
def dfs(i: int) -> None:
if i == len(nums):
res.append(nums.copy())
return
used = set()
for j in range(i, len(nums)):
if nums[j] in used:
continue
used.add(nums[j])
nums[i], nums[j] = nums[j], nums[i]
dfs(i + 1)
nums[i], nums[j] = nums[j], nums[i]
dfs(0)
return res
print(permute_swap([1, 1, 2]))
பொதுவான தவறுகள்
- தவறான குறியீடு.
- உலக வரிசை.
முக்கிய பாடங்கள்
- Heaps (மேம்பட்ட).
- swap DFS.
Tags:
Recursion & backtrackingPythonமாணவர்கள்
