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

जावास्क्रिप्ट में ऊंचाई के अनुसार कतार पुनर्निर्माण


मान लीजिए आपके पास एक कतार में खड़े लोगों की एक यादृच्छिक सूची है। प्रत्येक व्यक्ति को दो पूर्णांकों (h, k) के जोड़े द्वारा वर्णित किया जाता है, जहां h व्यक्ति की ऊंचाई है और k इस व्यक्ति के सामने उन लोगों की संख्या है जिनकी ऊंचाई h से अधिक या बराबर है।

हमें कतार को पुनर्निर्माण करने के लिए एक एल्गोरिदम लिखना है।

नोट - लोगों की संख्या 1,100 से कम है।

उदाहरण के लिए - यदि इनपुट कतार है -

const arr = [[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]];

तो आउटपुट कतार होनी चाहिए -

const output = [[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]];

उदाहरण

इसके लिए कोड होगा -

const arr = [[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]; 
const reconstructQueue = data => { 
  const result = []; 
  const sorter = (a, b) => { 
    return b[0] - a[0] || a[1] - b[1]; 
  }; 
  data.sort(sorter); 
  for (let i = 0; i < data.length; i++) { 
    result.splice(data[i][1], 0, data[i]); 
  } 
  return result; 
}; 
console.log(reconstructQueue(arr));

आउटपुट

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

[ [ 5, 0 ], [ 7, 0 ], [ 5, 2 ], [ 6, 1 ], [ 4, 4 ], [ 7, 1 ] ]
  1. JavaScript escape(): अप्रचलित URI एन्कोडिंग फंक्शन JavaScript escape(): अप्रचलित URI एन्कोडिंग फंक्शन

    चेतावनी: escape() फंक्शन JavaScript 1.5 से अप्रचलित (deprecated) है। आधुनिक कोड में encodeURI() या encodeURIComponent() का उपयोग करें। ऐतिहासिक उदाहरण { sampleEle.innerHTML = escape(url); }); </script> </body> </html> आउटपुट https%3A//www.google.com/images%3Fsize%

  1. JavaScript DataView: ArrayBuffer पर लो-लेवल बाइनरी एक्सेस JavaScript DataView: ArrayBuffer पर लो-लेवल बाइनरी एक्सेस

    DataView एक लो-लेवल इंटरफेस है जो ArrayBuffer (कच्चे बाइनरी डेटा का निश्चित-लंबाई कंटेनर) को पढ़ने/लिखने के लिए कई संख्या प्रकारों (Int8, Uint16, Float32, आदि) में अनुमति देता है। एंडियननेस नियंत्रण प्रदान करता है। उदाहरण { // बाइनरी में पढ़ें fillEle.innerHTML = बाइनरी: + view.g

  1. जावास्क्रिप्ट में क्यू का कार्यान्वयन जावास्क्रिप्ट में क्यू का कार्यान्वयन

    जावास्क्रिप्ट में क्यू को लागू करने का कोड निम्नलिखित है। उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style>    body { &nb