How to make the list of lists into a single list by interleaving elements in haskell? -
सूची की इनपुट सूची कैसे लें और
string = [[1, 2 , 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13,14,15,16]] आउटपुट सूची की तरह हैस्केल में यह प्रारूप?
[1, 2,5, 3,6 9, 4,7,10,13] इस का उपयोग करके प्रारूप <पूर्व> पुन: व्यवस्थित करें: [[ए]] - & gt; [ए] एक्सएस = ?? को पुनर्व्यवस्थित करें 2 डी सूची में सभी तत्वों को निकालने की इच्छा के रूप में मैं ओपी को भूल गया।
यहां एक फ़ंक्शन का एक संस्करण है जिसे मैंने मूल रूप से इस्तेमाल किया था जिसका सही व्यवहार है:
पिरामिडटी :: [[ए]] - & gt; [[ए]] पिरामिड टी [] = [[]] पिरामिड टी (पंक्ति: पंक्तियों) = ज़िप () पंक्ति ([] :( पिरामिड टी पंक्तियां)) पुन: व्यवस्थित करें :: [[एक]] - & gt; [ए] पुन: व्यवस्थित करें टी = कॉन्सैट पिरामिड टी - घी & gt; पिरामिड टेस्टडेटा - [[1], [2,5], [3,6 9], [4,7,10,13]] - घी & gt; पुन: व्यवस्थित करें टेस्टडेटा - [1,2,5,3,6,9,4,7,10,13] (पिछला पोस्ट:)
यहां एक है पुनरावर्ती समाधान मुझे यह पसंद नहीं है कि मेरे पास सहायक h को बदलने के लिए उपयुक्त उच्च-क्रम फ़ंक्शन नहीं है मान hab को zipWith (:) ab का अनुकरण करने के लिए है, लेकिन जब भी a और b हो वही लंबाई नहीं <पूर्व> आयात करें डेटा। सूची - | विकर्ण पिरामिड :: [[ए]] - & gt; विकर्णों की सूची की गणना करें। [[ए]] पिरामिड [] = [[]] पिरामिड (पंक्ति: पंक्तियाँ) = एच पंक्ति ([] :( पिरामिड पंक्तियां)) जहां एच [] आरएस = आरएस - पैड "खाली" तत्वों के साथ इनपुट छोड़ा गया [] = नक्शा (: []) एलएस - पैड सही इनपुट के साथ [] sh (एल: एलएस) (आर: आरएस) = (एल: आर): (एच एलएस आरएस) - ज़िप के रूप में कार्य के साथ होगा - | इंटरलिविंग की पुनर्व्यवस्था की गणना करें: [[ए]] - & gt; [ए] पुन: व्यवस्थित करें = कॉन्सैट पिरामिड टेस्टडेटा :: [[इंट] टेस्टडेटा = [[1,2,3,4], [5,6,7,8], [9, 10, 11, 12], [13,14,15,16] ] - घी & gt; पिरामिड टेस्टडेटा - [[1], [2,5], [3,6 9], [4,7,10,13], [8,11,14], [12,15], [16] ] - घी & gt; टेस्टडेटा को पुनर्व्यवस्थित करें - [1,2,5,3,6,9,4,7,10,13,8,11,14,12,15,16] < / html>
Comments
Post a Comment