摘要:左邊的元素和為,剛好等于右邊的元素和。在第二趟遍歷中,檢查當(dāng)前元素左邊所有元素的加和,是否等于減去當(dāng)前元素的值,如果滿足,則當(dāng)前點(diǎn)為樞紐點(diǎn),返回當(dāng)前元素的位置。
題目詳情
Given an array of integers nums, write a method that returns the "pivot" index of this array.想法
We define the pivot index as the index where the sum of the numbers to the left of the index is equal to the sum of the numbers to the right of the index.
If no such index exists, we should return -1. If there are multiple pivot indexes, you should return the left-most pivot index.題目的意思要找出輸入數(shù)組的“樞紐”點(diǎn)。這個(gè)“樞紐”的定義就是,這個(gè)元素所有左邊的元素的加和剛好等于它所有右邊元素的加和,并且我們返回這個(gè)樞紐點(diǎn)的位置。如果不存在這樣的“樞紐”,則返回-1.如果有多個(gè)這樣的樞紐,則返回最左側(cè)的樞紐點(diǎn)。
Example 1:
Input:
nums = [1, 7, 3, 6, 5, 6]
Output: 3
Explanation:
nums[3]左邊的元素和為11,剛好等于nums[3]右邊的元素和。
Example 2:
Input:
nums = [1, 2, 3]
Output: -1
Explanation:
沒有滿足“樞紐”定義的元素。所以返回-1.
有一種臨界情況需要考慮,就是元素nums[0]作為樞紐點(diǎn)的情況,這種情況下,nums[0]的所有的右邊的元素加和應(yīng)該為0,則nums[0]為數(shù)組的樞紐點(diǎn)。
考慮了這個(gè)特殊情況就沒有什么特別的了。我們先遍歷一趟獲得數(shù)組元素值的和sum。
在第二趟遍歷中,檢查當(dāng)前元素左邊所有元素的加和,是否等于sum減去當(dāng)前元素的值,如果滿足,則當(dāng)前點(diǎn)為樞紐點(diǎn),返回當(dāng)前元素的位置。
解法public int pivotIndex(int[] nums) { int length = nums.length; if(length == 0 || length ==1)return -1; int sum = 0; for(int num : nums)sum += num; if(sum-nums[0] == 0)return 0; int left = 0; for(int i=1;i
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/68457.html
Problem Given an array of integers nums, write a method that returns the pivot index of this array. We define the pivot index as the index where the sum of the numbers to the left of the index is equa...
摘要:前言從開始寫相關(guān)的博客到現(xiàn)在也蠻多篇了。而且當(dāng)時(shí)也沒有按順序?qū)懍F(xiàn)在翻起來覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個(gè)索引嘻嘻。順序整理更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新 前言 從開始寫leetcode相關(guān)的博客到現(xiàn)在也蠻多篇了。而且當(dāng)時(shí)也沒有按順序?qū)憽F(xiàn)在翻起來覺得蠻亂的。可能大家看著也非常不方便。所以在這里做個(gè)索引嘻嘻。 順序整理 1~50 1...
摘要:在線網(wǎng)站地址我的微信公眾號完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個(gè)題。這是項(xiàng)目地址歡迎一起交流學(xué)習(xí)。 這篇文章記錄我練習(xí)的 LeetCode 題目,語言 JavaScript。 在線網(wǎng)站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號: showImg(htt...
摘要:如果沒復(fù)雜度的要求,先也可以,再交叉放入數(shù)字也可以。交叉的時(shí)候注意是按照,降序的。 Wiggle Sort 題目鏈接:https://leetcode.com/problems... 這道題允許等號,相對簡單,有兩種方法:1. sort然后交換奇數(shù)位和它下一位的元素,2. 不滿足條件的時(shí)候直接交換 可以用遞推來說明一下這么做的正確性: 假設(shè)到第i位之前都滿足題目要求的關(guān)系 現(xiàn)在比較...
摘要:題目例子我的解法其他解法求最大值然后求二分法查找 1 題目 Lets call an array A a mountain if the following properties hold: A.length >= 3There exists some 0 < i < A.length - 1 such that A[0] < A[1] < ... A[i-1] < A[i] > A[...
閱讀 1535·2021-09-22 15:35
閱讀 2014·2021-09-14 18:04
閱讀 884·2019-08-30 15:55
閱讀 2457·2019-08-30 15:53
閱讀 2685·2019-08-30 12:45
閱讀 1209·2019-08-29 17:01
閱讀 2584·2019-08-29 15:30
閱讀 3521·2019-08-29 15:09