題目: 給定一個整數數組,判斷是否存在重復元素。 如果任意一值在數組中出現至少兩次,函數返回 true 。如果數組中每個元素都不相同,則返回 false 。 思路: 題目思路簡單。 程序: class ...
題目: 給定一組不含重復元素的整數數組 nums,返回該數組所有可能的子集 冪集 。 說明:解集不能包含重復的子集。 思路: 思路較簡單,迭代法。 程序: classSolution: defsubsets self,nums:List int gt List List int : length len nums iflength lt : return iflength : return ,n ...
2020-04-23 12:33 0 701 推薦指數:
題目: 給定一個整數數組,判斷是否存在重復元素。 如果任意一值在數組中出現至少兩次,函數返回 true 。如果數組中每個元素都不相同,則返回 false 。 思路: 題目思路簡單。 程序: class ...
題目:給你一個包含 n 個整數的數組 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a + b + c = 0 ?請你找出所有滿足條件且不重復的三元組。 注意:答案中不可以包含重復的三元組。 思路:可以參考兩個數求和的思路,但是需要考慮結果重復的情況。 代碼1:使用兩個 ...
題目: 給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。進階: 如果你已經實現復雜度為 O(n) 的解法,嘗試使用更為精妙的分治法求解。 思路:貪心法和分而治之 程序1:貪心發 class Solution ...
題目: 區域和檢索 - 數組不可變:給定一個整數數組 nums,求出數組從索引 i 到 j (i ≤ j) 范圍內元素的總和,包含 i, j 兩點。 示例: 給定 nums = [-2, 0, 3, -5, 2, -1],求和函數為 sumRange() sumRange ...
題目: 峰值元素是指其值大於左右相鄰值的元素。 給定一個輸入數組 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素並返回其索引。 數組可能包含多個峰值,在這種情況下,返回任何一個峰值所在位置即可。 你可以假設 nums[-1] = nums[n] = -∞。 說明 ...
題目: 給你一個整數數組 nums ,請你找出數組中乘積最大的連續子數組(該子數組中至少包含一個數字)。 思路: 考慮數組中為負數的情況。 程序: class Solution: def ...
題目:給定一個排序數組和一個目標值,在數組中找到目標值,並返回其索引。如果目標值不存在於數組中,返回它將會被按順序插入的位置。 你可以假設數組中無重復元素。 思路:題目比較簡單 程序: class Solution: def searchInsert ...
題目: 給定一個按照升序排列的整數數組 nums,和一個目標值 target。找出給定目標值在數組中的開始位置和結束位置。 你的算法時間復雜度必須是 O(log n) 級別。 如果數組中不存在目標值,返回 [-1, -1]。 思路:二分法,使用一個指針來找到數字的開頭和結尾位置 ...