मैंने अभी नौकरी साक्षात्कार पूरा कर लिया है और मैं इस प्रश्न से जूझ रहा था, जो मुझे 15 मिनट के साक्षात्कार देने के लिए एक बहुत कठिन सवाल के रूप में लगता है।पूर्णांक की स्ट्रीम से एक संतुलित बाइनरी खोज पेड़ बनाएं
प्रश्न था: एक फ़ंक्शन लिखें, जो पूर्णांक (अनियंत्रित) की धारा प्रदान करता है, एक संतुलित खोज वृक्ष बनाता है। अब, आप इनपुट समाप्त होने की प्रतीक्षा नहीं कर सकते (यह एक धारा है), इसलिए आपको फ्लाई पर पेड़ को संतुलित करने की आवश्यकता है।
मेरा पहला जवाब लाल-काले पेड़ का उपयोग करना था, जो निश्चित रूप से नौकरी करता है, लेकिन मुझे लगता है कि उन्होंने मुझे 15 मिनट में लाल काले पेड़ को लागू करने की उम्मीद नहीं की थी।
तो, क्या इस समस्या के लिए कोई आसान समाधान है, मुझे पता नहीं है?
धन्यवाद,
डेव
क्या आप पूर्णांक के बारे में कुछ भी जानते हैं (तथ्य यह है कि वे बिना छेड़छाड़ किए गए हैं)? क्या आपको किसी तत्व को देखने वाले किसी व्यक्ति के जवाब में बीएसटी बनाने की अनुमति है, या क्या आपके पास हर समय बीएसटी उपलब्ध होना चाहिए? क्या आप कई अलग-अलग बीएसटी बना सकते हैं, या आपको केवल एक बनाना है? – templatetypedef
ठीक है, शायद आप नियमों की काफी उदार व्याख्या के तहत एक लाल काले पेड़ का उपयोग कर सकते हैं। चूंकि 15 मिनट बहुत समय नहीं है, अगर आपको एसटीएल कंटेनर और एल्गोरिदम का उपयोग करने की तरह कुछ मूर्खतापूर्ण करने की इजाजत है, तो आप केवल एक std :: map बना सकते हैं, फिर ऑब्जेक्ट्स को सीधे इसमें डालें (लेकिन मुझे यह स्वीकार करना होगा कि यह है मूल रूप से धोखाधड़ी)। – Mikola
प्रश्न जैसा प्रतीत होता है, इनपुट या उपयोग पर कोई अन्य धारणा नहीं थी। मैंने सोचा कि शायद इसके लिए एक आम एल्गोरिदम है और मुझे इसके बारे में पता नहीं है। जाहिर है, वे चाहते थे कि मैं एक संतुलित पेड़ को लागू करूँ क्योंकि मुझे पता है। उसके साथ अच्छा भाग्य। – Dave