सप्तक में वेक्टर / मैट्रिक्स में दो तत्वों की अदला-बदली बहुत सरल है:
x='abcde';
x([4,1])=x([1,4])
x =
dbcae
दुर्भाग्य से, मुझे अभी तक एक अनाम फ़ंक्शन के अंदर ऐसा करने का कोई तरीका नहीं मिला है। जबकि नीचे दिया गया कार्य वाक्य-विन्यास सही है, यह केवल दो तत्वों की अदला-बदली करता है, न कि संपूर्ण x
वेक्टर:
f=@(x)(x([4,1])=x([1,4]))
f(x)
ans =
ad
क्या गोल्फ में गुमनाम कार्यों का उपयोग करके वांछित व्यवहार को प्राप्त करने का एक तरीका है? क्या अनाम फ़ंक्शन का उपयोग करके कई तत्वों को इस तरह स्वैप किया जा सकता है?
मैं एक अनुक्रमण वेक्टर बना सकता हूं : f=@(x)x([4,2,3,1,5])
लेकिन इस तरह के वेक्टर को गतिशील रूप से बनाने से बहुत अधिक बाइट्स भी लगेंगे।
प्रासंगिक मेटा पोस्ट ।
—
स्टीवी ग्रिफिन