क्या एल्गोरिथ्म दो सेटों से अधिकतम विकल्पों की गणना करेगा?


11

संभवतः असमान लंबाई के पूर्णांक के दो वैक्टरों को देखते हुए, मैं आकार अंतर के लिए छोटे वेक्टर में सम्मिलित अतिरिक्त शून्य के साथ दो वैक्टरों के बीच संख्याओं के संगत जोड़े के बीच अधिकतम चुनने से अधिकतम परिणाम कैसे निर्धारित कर सकता हूं?

उदाहरण के लिए, इनपुट के रूप में निम्नलिखित दो वैक्टर पर विचार करें:

[8 1 4 5]
[7 3 6]

शून्य और परिणामी राशि डालने के लिए विकल्प हैं:

[0 7 3 6]  => Maximums: [8 7 4 6]  =>  Sum is: 25
[7 0 3 6]  => Maximums: [8 1 4 6]  =>  Sum is: 19
[7 3 0 6]  => Maximums: [8 3 4 6]  =>  Sum is: 21
[7 3 6 0]  => Maximums: [8 3 6 5]  =>  Sum is: 22

इसलिए, इस मामले में, एल्गोरिथ्म को 25 वापस करना चाहिए।

मैं छोटे वेक्टर (जैसा कि ऊपर किया गया है) में शून्य रखने के सभी क्रमपरिवर्तन के लिए गणना करके क्रूर बल द्वारा ऐसा कर सकता था, लेकिन यह कम्प्यूटेशनल रूप से महंगा होगा, और सबसे खराब स्थिति में जब एक वेक्टर दूसरे के बिल्कुल आधे आकार का होगा।

क्या वैक्टर में लंबाई में भिन्नता होने पर भी लम्बे वेक्टर की आनुपातिक समय के उत्तर में गणना करने का एक तरीका है? यदि नहीं, तो क्या हम चुने जा रहे तथ्यात्मक क्रमांकन की संख्या से बेहतर कर सकते हैं?


3
0

2
मैं इसका उपयोग रैंकिंग से संबंधित एक अन्य खोज एल्गोरिदम के अधिकतम परिणाम की गणना करने के लिए कर रहा हूं कि एक दूसरे के समान दो वाक्य कैसे हैं। सही है, पुन: व्यवस्थित करना स्वीकार्य नहीं है।
विलियमकेफ

क्या हमने वैक्टर की लंबाई के बीच अंतर के बारे में कुछ भी वादा किया है? आपके उदाहरण में, केवल एक लापता शून्य है। यदि आप जानते हैं कि लापता शून्य की संख्या कम है, तो अधिक कुशल एल्गोरिदम हैं (उदाहरण के लिए, गतिशील प्रोग्रामिंग एल्गोरिदम को रैखिक समय में चलाने के लिए बनाया जा सकता है, यदि लापता शून्य की संख्या एक स्थिर है)।
DW

जवाबों:


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.