मैं एक सरणी के लिए सरणी a = [1, 2, 3, 4, 5, 6]
और b = [1, 3, 5]
और मैं a
ऐसे मैप करने के लिए कि b
में एक तत्व के बीच है कि a
में प्रत्येक तत्व के लिए यह करने के लिए मैप किया जाएगा चाहते हैं b
के सूचकांक कि ऊपरी सीमा है कि a
शब्दों में। नहीं सबसे अच्छा विवरण में निहित है है, लेकिन यहाँ एक उदाहरणअजगर - आसान तरीका करने के लिए "तुलना" नक्शा एक-दूसरे
a = 1 -> 0 because a <= first element of b
a = 2 -> 1 because b[0] < 2 <= b[1] and b[1] = 3
a = 3 -> 1
a = 4 -> 2 because b[1] < 4 <= b[2]
तो अंतिम उत्पाद मैं चाहता हूँ f(a, b) = [0, 1, 1, 2, 2, 2]
है मैं मुझे पता है बस पाश और इसके लिए हल कर सकते हैं, लेकिन मैं सोच रहा था वहाँ है अगर एक चतुर, तेजी से (vectorized) रास्ता/numpy
हल कर रहे हैं उन सरणियों हमेशा आदेश दिया रहे हैं? – taras
हाँ आप मान सकते हैं कि उन्हें आदेश दिया गया है।यह भी मान सकते हैं कि बी के प्रत्येक तत्व में निहित है (इस बाधा के बिना एक अधिक सामान्य समाधान शानदार होगा, लेकिन मुझे लगता है कि यह आसान बनाता है) – Michael