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

जावास्क्रिप्ट में सेट की सबसे लंबी लंबाई ढूंढना और लौटाना


समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो संख्याओं की एक सरणी, arr, को पहली और एकमात्र आर्गुमेंट के रूप में लेता है। सरणी, arr, लंबाई N की है जिसमें 0 से N-1 तक के सभी पूर्णांक होते हैं। हमारा फ़ंक्शन सेट S की सबसे लंबी लंबाई ढूंढकर लौटाने वाला है, जहां S[i] = {A[i], A[A[i]], A[A[A[i]]], ... } निम्न नियम के अधीन है।

मान लीजिए S में पहला तत्व इंडेक्स = i के तत्व A[i] के चयन से शुरू होता है, S में अगला तत्व A[A[i]] होना चाहिए, और फिर A[A[A[i]]]... उस सादृश्य से, हम S में डुप्लिकेट तत्व आने से ठीक पहले जोड़ना बंद कर देते हैं।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है:

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

तो आउटपुट होना चाहिए:

const output = 4;

आउटपुट व्याख्या

A[0] = 5, A[1] = 4, A[2] = 0, A[3] = 3, A[4] = 1, A[5] = 6, A[6] = 2।

सबसे लंबे S[K] में से एक:

S[0] = {A[0], A[5], A[6], A[2]} = {5, 6, 2, 0}

उदाहरण

निम्न कोड देखें:

const arr = [5, 4, 0, 3, 1, 6, 2]; const arrayNesting = (arr = []) => {    const visited = {}    const aux = (index) => {       if (visited[index]) {          return 0       }       visited[index] = true       return aux(arr[index], visited) + 1    }       let max = 0       arr.forEach((n, index) => {          if (!visited[index]) {             max = Math.max(max, aux(index))          }    )    return max } console.log(arrayNesting(arr));

आउटपुट

निम्न कंसोल आउटपुट है:

4

  1. - JavaScript में सबसे लंबा शब्द बनाना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो पहली आर्ग्युमेंट के रूप में एक यादृच्छिक अंग्रेजी वर्णमाला स्ट्रिंग str और दूसरी आर्ग्युमेंट के रूप में स्ट्रिंग्स की एक सरणी arr लेता है।हमारे फ़ंक्शन का कार्य स्ट्रिंग str से कुछ अक्षरों को हटाकर यह जांचना है कि कौन सा सबसे लंबा शब्द बनाया जा सकता है जो

  1. - JavaScript में सबसे लंबी स्ट्रिंग चेन की लंबाई

    शब्द श्रृंखला मान लीजिए word1, word2 का पूर्ववर्ती है यदि और केवल यदि हम word1 में कहीं भी ठीक एक अक्षर जोड़कर इसे word2 के बराबर बना सकते हैं। उदाहरण के लिए, abc, abac का पूर्ववर्ती है। = 1, जहां word_1, word_2 का पूर्ववर्ती है, word_2, word_3 का पूर्ववर्ती है, और इसी तरह। समस्या हमें एक JavaScri

  1. - जावास्क्रिप्ट में स्ट्रिंग में सबसे लंबी लगातार पुनरावृत्ति वाले कैरेक्टर और उसकी लंबाई ढूंढना

    समस्याहमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक स्ट्रिंग लेता है। हमारा फ़ंक्शन ठीक दो तत्वों की एक सरणी लौटाएगा: पहला तत्व वह कैरेक्टर होगा जो स्ट्रिंग में सबसे अधिक बार लगातार आता है और दूसरा उसकी उपस्थिति की संख्या होगी।उदाहरणनिम्न कोड देखें:const str = tdfdffddffsdsfffffsdsdsddddd; const find