कैसे को खोजने के लिए तीन सबसे बड़ी संख्या में एक सरणी?

0

सवाल

हैलो मैं खोजने के लिए चाहते हैं तीन सबसे बड़ी संख्या में एक सरणी के द्वारा आदेश. मैं उलझन में हूँ कैसे मैं को लागू करना चाहिए पिछले तर्क है, जहां मुझे शिफ्ट करने के लिए अनुक्रमित के परिणाम सरणी के आधार पर यदि वर्तमान संख्या में परिणाम सरणी है अधिक से अधिक या कम की तुलना में पाश सरणी के आइटम नहीं है ।

    function findThreeLargestNumbers(array) {
  let result = [null, null, null];
  for (let i = 0; i < array.length; i++) {
    if (!result[2] || result[i] > result[2]) {
      for (let j = 0; i <= 2; i++) {
        if (j === 2) {
          result[j] = array[i]
        } else {
          result[j] = array[i + 1]
        }
      }
    }
  }
  return result
}


console.log(findThreeLargestNumbers([141, 1, 17, -7, -17, -27, 18, 541, 8, 7, 7]));
algorithm javascript
2021-11-24 00:43:28
1

सबसे अच्छा जवाब

2

आप कर सकते हैं बस sort यह आरोही क्रम में और का उपयोग करें slice प्राप्त करने के लिए पिछले 3 तत्वों के रूप में:

1) जब आप चाहते हैं कि परिणाम में पिछले 3 सबसे बड़ी आरोही क्रम में [18, 141, 541]

function findThreeLargestNumbers(array) {
  return [...array].sort((a, b) => a - b).slice(-3);
}

// [18, 141, 541]
console.log(findThreeLargestNumbers([141, 1, 17, -7, -17, -27, 18, 541, 8, 7, 7]));

2) जब आप चाहते हैं कि परिणाम में पिछले 3 सबसे बड़ी अवरोही क्रम में [541, 141, 18]

function findThreeLargestNumbers(array) {
  return [...array].sort((a, b) => b - a).slice(0, 3);
}

console.log(findThreeLargestNumbers([141, 1, 17, -7, -17, -27, 18, 541, 8, 7, 7]));

2021-11-24 00:50:39

यहां तक कि बेहतर क्लोन करने के लिए सरणी और पिछले 3 नंबर. BTW धन्यवाद संपादित
decpk

क्लोन करने के लिए सरणी होगा आप का उपयोग प्रसार ऑपरेटर या पाश के लिए और पुश करने के लिए खाली सरणी?
dev

@देव ... नहीं है, ऑपरेटर यह फैल रहा है वाक्यविन्यास है. मैं जाने के लिए spread वाक्य रचना...
decpk

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में