Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में एक-आयामी सरणी को दो-आयामी सरणी में विभाजित करना


हमें एक फ़ंक्शन लिखना है जो पहले तर्क के रूप में एक-आयामी सरणी और दूसरे तर्क के रूप में एक संख्या n लेता है और हमें पैरेंट सरणी के अंदर n उप-सरणियाँ बनानी हैं (यदि संभव हो) और तत्वों को तदनुसार उनमें विभाजित करना है।

** यदि सरणी में 9 तत्व हैं और हमें 4 उप-सरणियाँ बनाने के लिए कहा गया है, तो प्रत्येक उप-सरणी में 2 तत्व विभाजित करने से 5 उप-सरणियाँ बनती हैं और 3 प्रत्येक से 3 बनती हैं, ऐसे मामलों में हमें निकटतम निम्न स्तर (इस मामले में 3) पर वापस आना होगा क्योंकि हमारी आवश्यकता है कि प्रत्येक उप-सरणी में समान संख्या में तत्व वितरित हों, कुछ विशेष मामलों में अंतिम को छोड़कर।

उदाहरण के लिए:

// यदि इनपुट सरणी है:
const arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'];
// और संख्या 2 है
// तो आउटपुट होना चाहिए:
const output = [ ['A', 'B', 'C', 'D', 'E'], ['F', 'G', 'H', 'I'] ];

आइए इस फ़ंक्शन के लिए कोड लिखते हैं:

उदाहरण

const arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'];

const splitArray = (arr, rows) => {
  const itemsPerRow = Math.ceil(arr.length / rows);
  return arr.reduce((acc, val, ind) => {
    const currentRow = Math.floor(ind / itemsPerRow);
    if (!acc[currentRow]) {
      acc[currentRow] = [val];
    } else {
      acc[currentRow].push(val);
    }
    return acc;
  }, []);
};

console.log(splitArray(arr, 2));

आउटपुट

कंसोल में आउटपुट होगा:

[ ['A', 'B', 'C', 'D', 'E'], ['F', 'G', 'H', 'I'] ]

  1. - JavaScript में सरणी प्रविष्टियों को विभाजित करके ऑब्जेक्ट बनाना

    मान लीजिए, हमारे पास स्ट्रिंग लिटरल्स की एक सरणी है जैसे -const arr = [    fiat-palio,    fiat-stilo,    fiat-strada,    fiat-uno,    fiat-uno,    gm-corsa,    gm-celta,    ford-fiesta,    volkswagen-gol,  

  1. - JavaScript में सरणी की सरणी को ऑब्जेक्ट में बदलना

    मान लीजिए हमारे पास सरणियों की एक सरणी है जिसमें एक क्रिकेट खिलाड़ी का प्रदर्शन इस तरह से है - const arr = [ [Name, V Kohli], [Matches, 13], [Runs, 590], [Highest, 183], [NO, 3], [SR, 131.5] ]; हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी सरणी की सरणी लेता है। यहां, प्रत्येक उप-सरणी एक कु

  1. - JavaScript में सरणी को लगातार उपअनुक्रमों में विभाजित करना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो क्रमबद्ध पूर्णांकों की एक सरणी arr को एकमात्र आर्गुमेंट के रूप में लेता है।हमारा फ़ंक्शन true लौटाना चाहिए यदि और केवल यदि हम सरणी को 1 या अधिक उपअनुक्रमों में विभाजित कर सकते हैं जैसे कि प्रत्येक उपअनुक्रम में लगातार पूर्णांक हों और लंबाई कम से कम 3 हो,