हमें एक JavaScript फ़ंक्शन लिखना आवश्यक है जो स्ट्रिंग्स की एक सरणी लेता है। फ़ंक्शन को सरणी की स्ट्रिंग्स में सबसे लंबा असामान्य सबसीक्वेंस ढूंढना चाहिए।
सबसे लंबे असामान्य सबसीक्वेंस से हमारा मतलब है इन स्ट्रिंग्स में से किसी एक का सबसे लंबा सबसीक्वेंस और यह सबसीक्वेंस अन्य स्ट्रिंग्स का कोई सबसीक्वेंस नहीं होना चाहिए।
हमारा फ़ंक्शन इस सबसे लंबे असामान्य सबसीक्वेंस की लंबाई वापस करना चाहिए।
उदाहरण के लिए: यदि इनपुट सरणी है −
const arr = ["aba", "cdc", "eae"];
तो आउटपुट 3 होना चाहिए।
उदाहरण
इसके लिए कोड होगा −
const arr = ["aba", "cdc", "eae"]; const findUncommonLength = (array = []) => { const seen = {}; const arr = []; let max = -1; let index = -1; for(let i = 0; i < array.length; i++){ seen[array[i]] = (seen[array[i]] || 0) + 1; if(seen[array[i]] > 1){ if(max < array[i].length){ max = array[i].length index = i; } } }; if(index === -1) { array.forEach(el =>{ if(el.length > max) max = el.length; }) return max; }; for(let i = 0; i < array.length; i++){ if(seen[array[i]] === 1) arr.push(array[i]); }; max = -1; for(let i = arr.length - 1; i >= 0; i--){ let l = arr[i]; let d = 0; for(let j = 0; j < array[index].length; j++){ if(array[index][j] === l[d]){ d++; } } if(d === l.length){ let temp = arr[i]; arr[i] = arr[arr.length - 1]; arr[arr.length - 1] = temp; arr.pop(); } }; arr.forEach(el =>{ if(el.length > max) max = el.length; }); return max; }; console.log(findUncommonLength(arr));आउटपुट
और कंसोल में आउटपुट होगा −
3