सॉर्ट के बारे में संग्रह बनाम Arrays() सॉर्ट() विधि के संबंध में इन दोनों के बीच क्या अंतर है? मुझे पता है Arrays 'sort() सॉर्ट() के लिए बाइनरी खोज का उपयोग कर रहा है, संग्रह के बारे में क्या? और कैसे उपयोग करना है इसका चयन करें? धन्यवाद!सॉर्ट के बारे में संग्रह बनाम Arrays()
उत्तर
ठीक है, (Collections.sort
एक List
पर चल रही है, और Arrays.sort
एक सरणी पर चल रही है) विभिन्न सामान पर काम के अलावा, java.util.Collections.sort()
बस java.util.Arrays.sort()
कॉल बड़े कार्य करने करने के लिए।
इसके अलावा, इसके लायक होने के लिए, ध्यान दें कि Arrays.sort
एक विलय प्रकार चलाता है।
आदिम सरणी पर सॉर्ट क्विकॉर्ट का उपयोग करता है, हालांकि (प्राइमेटिव्स के लिए स्थिरता संपत्ति न तो आवश्यक है और न ही सार्थक है)। –
ऐसा लगता है कि यह जावा 7 में एक टाइम्सॉर्ट (संशोधित विलय सॉर्ट) है http://stackoverflow.com/questions/4018332/is-java-7-using-tim-sort-for-the-method-arrays-ॉर्ट – rogerdpack
यदि आप ऐरे से निपट रहे हैं तो Arrays.sort() का उपयोग करें। Collections.sort() का उपयोग करें यदि आप कुछ ऐसा व्यवहार कर रहे हैं जो संग्रह इंटरफ़ेस लागू करता है (उदाहरण के लिए ArrayList)।
जैसा कि अन्य उत्तरों ने कहा है, आप किसी ऑब्जेक्ट से निपटने के दौरान संग्रह .sort() का उपयोग करेंगे जो संग्रह इंटरफ़ेस और Arrays.sort() विधि को ऐरे से निपटने के दौरान लागू करता है।
एक संबंधित प्रश्न यह है कि यदि आप मानों का एक सेट सॉर्ट करना चाहते हैं तो किस प्रकार की डेटा संरचना बेहतर होती है। यदि आपको किसी सूची का उपयोग करने की आवश्यकता है, तो मैं ओ (1) में चलने वाले प्रविष्टियों के बाद से लिंक्डलिस्ट का उपयोग करने का सुझाव दूंगा जहां एक ऐरेलिस्ट की तरह कुछ ओ (एन) होगा।
यदि कोई डुप्लिकेट नहीं होगा या डुप्लीकेट नहीं है तो आप सॉर्टेडसेट का उपयोग करने का विकल्प भी चुन सकते हैं। इस तरह आपको बाहरी सॉर्ट विधि का उपयोग करने से परेशान नहीं होना पड़ेगा।
मैं सरणी 'तरह पता() प्रकार के लिए द्विआधारी खोज()
नहीं, आप इस तरह के किसी भी बात पता नहीं है का उपयोग कर रहा है। यह ऐसा नहीं करता है। जावाडोक देखें।
कथन भी समझ में नहीं आता है। आप 'सॉर्ट के लिए बाइनरी खोज का उपयोग नहीं कर सकते'। बाइनरी खोज केवल तभी काम करती है जब डेटा पहले से ही सॉर्ट किया गया हो। शायद आप जो पढ़ते हैं वह है कि Arrays.binarySearch()
मानता है डेटा सॉर्ट किया गया है।
संग्रह .sort() सूची पर संचालित करता है जहां Arrays.sort() एक ऐरे पर काम करता है।
Arrays.sort() दोहरे धुरी quicksort आदिम सरणी के लिए और का उपयोग करता MergeSort वस्तुओं की सरणी छँटाई के लिए। Collections.sort की
उदाहरण():
ArrayList<Integer> arr = new ArrayList<Integer>();
arr.add(15);
arr.add(10);
arr.add(5);
arr.add(2);
Collections.sort(arr);
Arrays.sort() का उदाहरण:
int[] arr = new int[4]
arr[0]=15;
arr[1]=10;
arr[2]=5;
arr[3]=2;
Arrays.sort(arr);
Collection.sort प्रयोग किया जाता है जब आप सूचियों के साथ काम कर और arrays.sort पर मुकदमा दायर किया है सरणी से निपटने पर। लेकिन आंतरिक रूप से Collection.sort केवल Arrays.sort विधि का उपयोग करता है। अब आंतरिक रूप से सॉर्टिंग को विलय सॉर्ट करने के बजाय टिमोसर्ट तकनीक के आधार पर किया जाता है, क्योंकि स्थिर, अनुकूली सरणी मर्ज प्रकार में ओ (nlogn) तुलना लेती है लेकिन टिमसोर्ट में सबसे खराब स्थिति में यह ओ (nlogn) लेता है और सबसे खराब स्थिति भंडारण में n/2 की आवश्यकता होती है टिमसोर्ट में लेकिन यह मर्ज सॉर्ट तकनीक के मामले में नहीं है।
- 1. बहुत सारे चर बनाम Arrays
- 2. डेटाबेस सॉर्ट बनाम प्रोग्रामेटिक जावा सॉर्ट
- 3. $ .each ([संग्रह]) बनाम $ ([संग्रह])। प्रत्येक()
- 4. जावा में कचरा संग्रह के बारे में प्रश्न
- 5. सार्वजनिक संग्रह के लिए कस्टम संग्रह बनाम जेनेरिक संग्रह
- 6. सॉर्टेडलिस्ट बनाम सॉर्टेड डिक्शनरी बनाम सॉर्ट करें()
- 7. पेड़: लिंक्ड सूचियां बनाम Arrays (क्षमता)
- 8. जावा ऑप्टिमाइज़ेशन स्ट्रिंग बनाम चार Arrays
- 9. mongodb capped संग्रह के बारे में प्रश्न + ट्यूटोरियल कर्सर
- 10. Magento: उत्पाद संग्रह को सॉर्ट करना
- 11. सूची बनाम पायथन सॉर्ट() फ़ंक्शन
- 12. मुझे IComparable और संग्रह सॉर्ट विधि
- 13. व्यूमोडेल प्रबंधन (डिजाइनटाइम बनाम रन टाइम) के बारे में प्रश्न
- 14. "ओवरराइड" सी # में बनाम 'नई' के बारे में उलझन में
- 15. संग्रह/स्ट्रिंग। बनाम संग्रह/स्ट्रिंग। इंडेक्सऑफ
- 16. जावा संग्रह। चेक * *) बनाम जेनेरिक संग्रह
- 17. जावा संग्रह मानचित्र बनाम संग्रह ढांचे
- 18. LINQ बनाम संग्रह दृश्य
- 19. Arrays?
- 20. जावा addAll (संग्रह) नए बनाम ArrayList (संग्रह)
- 21. पॉइंटर्स के Arrays
- 22. std :: के बारे में उलझन में runtime_error बनाम std :: logic_error
- 23. malloced arrays और newed arrays
- 24. arrays के लिए auto_ptr
- 25. Backbone.js Arrays
- 26. Arrays में लंबाई
- 27. स्केल संग्रह में उत्परिवर्तनीय बनाम अपरिवर्तनीय
- 28. backbone.js में संग्रह बनाम मॉडल भ्रम
- 29. संयुक्त Arrays के एनएसएआरएआर
- 30. तार के बारे में बहस "एसडीके बनाम" बिट्स क्या है?
बाइनरी खोज एक सॉर्टिंग एल्गोरिदम नहीं है। – SigmaX