हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो संख्याओं की एक सरणी लेता है। संख्याओं की सरणी में धनात्मक और ऋणात्मक दोनों संख्याएँ हो सकती हैं।
हमारे फ़ंक्शन का उद्देश्य सरणी (किसी भी लंबाई के) से उप सरणी को ढूंढना है, जिसके तत्वों को संक्षेप में अधिकतम योग मिलता है। फिर फ़ंक्शन को उस उपसरणी के तत्वों का योग वापस करना चाहिए।
उदाहरण के लिए -
यदि इनपुट ऐरे है -
const arr = [-2,1,-3,4,-1,2,1,-5,4];
तब आउटपुट होना चाहिए -
const output = 6
क्योंकि, [4,-1,2,1] का सबसे बड़ा योग 6 है।
उदाहरण
const arr = [-2,1,-3,4,-1,2,1,-5,4]; const maxSubArray = (arr = []) => { let sum = arr[0], max = arr[0]; for (let i = 1; i < arr.length; ++i){ sum = Math.max(sum + arr[i], arr[i]), max = Math.max(max, sum); }; return max; }; console.log(maxSubArray(arr));
आउटपुट
और कंसोल में आउटपुट होगा -
6