std :: सॉर्ट का व्यवहार क्या होता है जब बराबर इन्स के साथ उपयोग किया जाता है, यह उन्हें एक ही क्रम में रखने या बस कुछ अप्रत्याशित सामान करने जा रहा है?std :: सॉर्ट्स के साथ सॉर्ट व्यवहार
उत्तर
std::sort
बराबर तत्वों के क्रम को सुरक्षित नहीं करता है, std::stable_sort
करता है। हालांकि, int
रों के मामले में आप अंतर नोटिस नहीं होगा जब तक आप निम्न उदाहरण में के रूप में कुछ गैर तुच्छ आदेश का उपयोग करें:
struct half_less
{
bool operator()(int a, int b) const { return (a/2) < (b/2); }
};
std::sort(begin, end, half_less());
@vitaut सही है। मैं सिर्फ यह जोड़ना चाहता हूं कि आप नोटिस नहीं करेंगे कि बराबर पूर्णांक का क्रम बदल दिया गया है या नहीं। यह केवल तभी मायने रखता है जब आप मूल्यों को क्रमबद्ध करते हैं जो इंडेंटिंग संपत्ति होती है। उदाहरण के लिए यदि आप पूर्णांक के लिए पॉइंटर्स को पूर्णांक और सॉर्ट करते हैं।
+1: प्रश्न पढ़ने के दौरान मैंने सोचा था :) –
दाएं, या यदि तुलना करने वाले मज़ेदार द्वारा प्रदान किए गए कुछ गैर-तुच्छ क्रम का उपयोग किया जाता है। – vitaut
@ विटॉट: क्या आप "गैर-तुच्छ क्रम" का उपयोग उन चींटियों के लिए कर सकते हैं जो इस तरह की गैर-स्थिरता का पता लगाएंगे? –
- 1. std :: वेक्टर और std :: मिनट व्यवहार
- 2. एसटीडी के व्यवहार :: std :: लांच :: async नीति
- 3. std :: async (std :: launch :: async) बनाम जीसीसी का व्यवहार बनाम क्लैंग का व्यवहार
- 4. व्यवहार के साथ डेटाकंट्रैक्ट
- 5. स्ट्रिंग द्वारा std :: vector <std :: pair <std :: string, bool >> को सॉर्ट करना?
- 6. `std :: list` के 'end()` को मिटाने का व्यवहार क्या है?
- 7. सीडी ++ 0x/C++ 11 में lambda फ़ंक्शन के साथ std :: सॉर्ट काम करना चाहिए?
- 8. std :: बढ़ावा :: म्युटेक्स के नक्शे को अजीब व्यवहार
- 9. औसत() के साथ अजीब व्यवहार?
- 10. std :: के साथ संभावित ओवरफ्लो
- 11. नेमस्पेस "std" में कोई सदस्य नहीं है "सॉर्ट"
- 12. std :: back_inserter एक std :: set के लिए?
- 13. std :: vector और std :: array के लिए C++ प्रारंभकर्ता_सूची व्यवहार अलग क्यों है?
- 14. असंगत "लोडरर" व्यवहार 'lib' नेमस्पेसिंग/ऑटोलोडिंग के साथ व्यवहार
- 15. xcode std :: wcharout wchar_t या std :: wstring के साथ!
- 16. क्या std :: list <> :: सॉर्ट स्थिर है?
- 17. क्या हर मामले में `std :: set` सॉर्ट तत्व है?
- 18. std :: stringstream के साथ% 02d के समतुल्य?
- 19. std :: थ्रेड के साथ डेटा सदस्य
- 20. jQuery यूआई के साथ सॉर्ट करने योग्य + नेस्टेड सूचियां 1.8.2
- 21. std :: sort
- 22. std :: vector को स्वयं में अपरिभाषित व्यवहार में जोड़ना?
- 23. ओरेकल के वर्चर्स सॉर्ट ऑर्डर वर्कर तुलना के व्यवहार से मेल नहीं खाता है?
- 24. दृश्य स्टूडियो पर std :: स्ट्रिंग का विशिष्ट व्यवहार?
- 25. क्या यह std :: सरणी अपरिभाषित व्यवहार का उपयोग है?
- 26. सिंक्रनाइज़ कथन के साथ पुनर्वित्त सिंक्रनाइज़ेशन व्यवहार
- 27. विरासत के साथ स्थैतिक चर का व्यवहार
- 28. जीसीसी के साथ अजीब पूर्णांक व्यवहार -O2
- 29. mediaplayer के साथ अजीब व्यवहार और तलाश
- 30. अजीब जावा व्यवहार आदिम प्रकारों के साथ
नहीं (ए/2) <(बी/2) एक <बी के समान है? – Zebrafish
@ ज़ेब्राफिश नहीं, उदाहरण के लिए एक = 2 और बी = 3 – vitaut
आह हाँ पर विचार करें। धन्यवाद। – Zebrafish