में पूर्णांक के सूचकांक डेक वहाँ मेरे विकल्प क्या हैं? मुझे append
एस (दाएं छोर पर) और popleft
एस (बाएं सिरे से, स्वाभाविक रूप से) पर कॉल करने की आवश्यकता है, लेकिन स्टोरेज के बीच से भी पढ़ने के लिए, जो एल्गोरिदम की प्रकृति द्वारा लगातार बढ़ेगा। मैं इन सभी परिचालनों को O(1)
में रखना चाहता हूं।ओ (1) पायथन
मैं इसे सर्कुलरली-एड्रेस किए गए सरणी (शब्द क्या है?) पर पर्याप्त आसान सी में कार्यान्वित कर सकता है जो पूर्ण होने पर स्वचालित रूप से बढ़ेगा; लेकिन पाइथन के बारे में क्या? अन्य भाषाओं के पॉइंटर्स की भी सराहना की जाती है (मुझे एहसास है कि "संग्रह" टैग अधिक जावा इत्यादि उन्मुख है और तुलना की सराहना करता है, लेकिन द्वितीयक लक्ष्य के रूप में)।
मैं एक लिस्प पृष्ठभूमि से आया हूं और यह जानने के लिए आश्चर्यचकित था कि पाइथन में एक सूची से एक प्रमुख तत्व को हटाने में O(n)
ऑपरेशन है। एक deque
दस्तावेज को छोड़कर एक जवाब हो सकता है कि मध्य में मध्य में O(n)
पहुंच है। क्या कुछ और है, पूर्व निर्मित?
सामान्य रूप से, http://en.wikipedia.org/wiki/Hashed_array_tree प्रासंगिक हो सकता है। –