कुशल कार्यक्रम मुद्रित करने के लिए/आकार 3 के सभी बढ़ती subsequences वापसी एक सरणी में
की तरह एक सरणी1, 6, 5, 2, 3, 4
हम
1 2 3
1 3 4
1 2 4
2 3 4
मुद्रित करने के लिए की जरूरत को देखते हुए
ऐसा करने का सबसे अच्छा तरीका क्या है? क्या यह गतिशील प्रोग्रामिंग है?
क्या ब्रूटफोर्स ओ (एन 3) से बेहतर करने का कोई बेहतर तरीका है? मुझे यकीन है कि वहाँ है।
कारण मैं कहता हूँ गतिशील प्रोग्रामिंग है, क्योंकि मैं की तरह
- के लिए '1'
कुछ के रूप में देख सकते हैं (आकार 2 के subsequences के साथ सरणी के बाकी के उप समस्या के सभी परिणाम मुद्रित)।
- '2' (आकार 2 की subseqences के साथ सरणी के बाकी के उप समस्याओं के सभी परिणामों को मुद्रित)
के लिए
और इस तरह चले जाते हैं।
हालांकि, उपर्युक्त दो परिणामों में बहुत अधिक ओवरलैप है, इसलिए हमें लगता है कि इसका पुन: उपयोग करने का एक प्रभावी तरीका खोजने की आवश्यकता है।
अच्छा, ये केवल यादृच्छिक विचार हैं। आप मुझे सही अपहरण के साथ सही कर सकते हैं।
ठीक है, प्रिंट करने पर मुझे सही करने दें, मुझे वापस आने वाले विभिन्न बढ़ते अनुक्रमों की आवश्यकता है। मेरा मुद्दा यह है कि, मुझे इन अनुक्रमों को सबसे कुशल तरीके से प्राप्त करने के लिए एक दृष्टिकोण खोजने की आवश्यकता है।
कौन सी भाषा? या यह भाषा अज्ञेयवादी है? इनपुट सरणी का अधिकतम आकार क्या है? – Kiril
अच्छी भाषा अज्ञेयवादी। मुझे एक दृष्टिकोण चाहिए। आप 10 से दस लाख के बीच इनपुट सरणी आकार के बारे में सोच सकते हैं :) – AMM
यदि आपको इस तरह के हर बाद के प्रिंट को प्रिंट करने की आवश्यकता है, तो यह 'ओ (एन^3)' से बेहतर नहीं होता है। यदि आप उन्हें गिनना चाहते हैं, तो आप बेहतर कर सकते हैं। – IVlad