मान लीजिए, हमारे पास A नामक एक सरणी है जिसमें कुछ इंटीजर हैं। हमें संख्याओं को सम फिर विषम के रूप में सॉर्ट करना है। तो पहले सम संख्याएं रखें, फिर विषम संख्याएं। तो यदि सरणी A = [1, 5, 6, 8, 7, 2, 3] जैसी है, तो परिणाम [6, 8, 2, 1, 5, 7, 3] जैसा होगा।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे:
- i := 0 और j := 0 सेट करें
- जब j < सरणी का आकार
- यदि arr[j] सम है, तो
- arr[i] और arr[j] को स्वैप करें,
- i को 1 से बढ़ाएं
- j को 1 से बढ़ाएं
- यदि arr[j] सम है, तो
- arr लौटाएं
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:
उदाहरण
class Solution(object):
def sortArrayByParity(self, a):
i = 0
j = 0
while j < len(a):
if a[j] % 2 == 0:
a[i], a[j] = a[j], a[i]
i += 1
j += 1
return a
ob1 = Solution()
nums = [1, 5, 6, 8, 7, 2, 3]
print(ob1.sortArrayByParity(nums))
इनपुट
[1, 5, 6, 8, 7, 2, 3]
आउटपुट
[6, 8, 2, 5, 7, 1, 3]