मैं एक बड़ी डेटा स्रोत लगभग 8 लाख प्रविष्टियों को स्कैन कर रहा हूँ, वर्तमान में, प्रविष्टि प्रति स्ट्रिंग है, जो मैं वर्णमाला के क्रम में चाहते पर निकालने।
Currenlty मैं उन्हें एक सरणी में तो तरह एक सूचकांक उन्हें डाल का उपयोग कर qsort()जो ठीक काम करता है।
लेकिन जिज्ञासा से बाहर मैं बजाय एक डेटा संरचना है कि उन्हें वर्णमाला के क्रम में रखता है के रूप में मैं उन्हें डेटा स्रोत से स्कैन में प्रत्येक स्ट्रिंग डालने की सोच रहा हूँ आंशिक रूप से एक emlplementing के अनुभव के लिए, आंशिक रूप से, क्योंकि यह के लिए प्रतीक्षा के बिना तेजी से महसूस होगा प्रकार स्कैन पूरा कर लिया है के बाद पूरा करने के लिए (-:
क्या डेटा संरचना सबसे सी में लागू करने के लिए सरल हो सकता है?
अद्यतन करें
स्पष्ट करने के लिए, केवल संचालन मैं प्रदर्शन करने की जरूरत है एक आइटम डालने और सूचकांक इसके पूर्ण होने पर, जिसके द्वारा मैं मूल क्रम में प्रत्येक आइटम के लिए इसका मतलब यह एक पूर्णांक है ताकि इसे छँटाई के बाद में है का प्रतिनिधित्व डंप डंप कर रहे हैं।
सारांश
- सबसे आसान लागू करने के लिए द्विआधारी खोज के पेड़ हैं।
- स्व संतुलन द्विआधारी पेड़ काफी बेहतर है, लेकिन लागू करने के लिए nontrivial हैं।
- निवेशन iteratively किया जा सकता है, लेकिन जब दोनों ने किया पेड़ को हटाने के लिए परिणाम और बाद के क्रम ट्रेवर्सल डंपिंग के लिए इन-आदेश ट्रावर्सल या तो प्रत्यावर्तन या एक स्पष्ट ढेर की आवश्यकता है।
- संतुलन को लागू करने के बिना, आदेश दिया इनपुट के रन पतित सबसे खराब स्थिति है जो एक लिंक्ड सूची है का परिणाम देगा। यह गहरी पेड़ जो गंभीर रूप से डालने के आपरेशन की गति को प्रभावित करता है।
- इनपुट फेरबदल थोड़ा को तोड़ सकता है इनपुट काफी आदेश दिया और कहा कि संतुलन लागू करना आसान है।













