LeetCode--初級演算法--陣列篇-存在重複
題目
給定一個整數陣列,判斷是否存在重複元素。
如果任何值在陣列中出現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。
示例 1:
輸入: [1,2,3,1]
輸出: true
示例 2:
輸入: [1,2,3,4]
輸出: false
示例 3:
輸入: [1,1,1,3,3,4,3,2,4,2]
輸出: true
解析:
直接暴力一點,採用for迴圈,增加了時間複雜度O(2)。
程式碼
bool containsDuplicate(int* nums, int numsSize) {
int i = 0;
int j = 0;
for(i = 0;i < numsSize;i++)
{
for(j = i+1;j < numsSize;j++)
{
if(nums[i] == nums[j])
return true;
}
}
return false;
}
相關推薦
LeetCode--初級演算法--陣列篇-存在重複
題目 給定一個整數陣列,判斷是否存在重複元素。 如果任何值在陣列中出現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。 示例 1: 輸入: [1,2,3,1] 輸出: true 示例 2: 輸入: [1,2,3,4] 輸出: fal
LeetCode--初級演算法--陣列篇-加一
題目 給定一個由整陣列成的非空陣列所表示的非負整數,在該數的基礎上加一。 最高位數字存放在陣列的首位, 陣列中每個元素只儲存一個數字。 你可以假設除了整數 0 之外,這個整數不會以零開頭。 示例1: 輸入: [1,2,3] 輸出: [1,2,4] 解釋: 輸入陣列表示
LeetCode--初級演算法--陣列篇-只出現一次的數字
題目 給定一個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。 說明: 你的演算法應該具有線性時間複雜度。 你可以不使用額外空間來實現嗎? 示例 1: 輸入: [2,2,1] 輸出: 1 示例 2:
LeetCode--初級演算法--陣列篇-旋轉陣列
題目 給定一個數組,將陣列中的元素向右移動 k 個位置,其中 k 是非負數。 示例 1: 輸入: [1,2,3,4,5,6,7] 和 k = 3 輸出: [5,6,7,1,2,3,4] 解釋: 向右旋轉 1 步: [7,1,2,3,4,5,6] 向右旋轉 2 步: [6,7,
LeetCode--初級演算法--陣列篇--買賣股票的最佳時機 II
題目 給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。 設計一個演算法來計算你所能獲取的最大利潤。你可以儘可能地完成更多的交易(多次買賣一支股票)。 注意:你不能同時參與多筆交易(你必須在再次購買前出售掉之前的股票)。 示例 1: 輸入: [7,1,5,3,6
LeetCode--初級演算法--陣列篇--第三題--旋轉陣列
題目: 給定一個數組,將陣列中的元素向右移動 k 個位置,其中 k 是非負數。 示例 示例 1: 輸入: [1,2,3,4,5,6,7] 和 k = 3 輸出: [5,6,7,1,2,3,4] 解釋:
leetcode題解-初級演算法陣列篇(1-5題)
7月保研的夏令營已經告一段落了,面試中被問了很多演算法的問題,感覺自己演算法知識有些許薄弱(acm大神忽略),所以準備開始刷leetcode,順便也為面試準備,因為想把刷leet裡面的一些心得給記下來,便於之後複習,所以在這裡開博。之後會按裡面的篇章順序進行更新
leetcode題解-初級演算法陣列篇(6-11題)
繼續填坑,本篇文章帶來的是leetcode初級演算法陣列篇6-11題的題解。 第六題 兩個陣列的交集 II 題目描述:給定兩個陣列,編寫一個函式來計算它們的交集。 示例 1: 輸入: nums1 = [1,2,2,1], nums2 = [2,2]
leetcode | 初級演算法-陣列
01 起 最近“不務正業地”刷了一波leetcode上的演算法題,初級演算法已經刷完50%,戰況如下, 刷題固然爽快,但及時總結才是進步之道,下面就陣列部分的題目進行回顧和總結。 注意,刷題使用的語言是Python3,"陣列"這個資料結構在Python中對應
LeetCode初級演算法——陣列(2)買賣股票的最佳時機 II
買賣股票的最佳時機 II 給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。 設計一個演算法來計算你所能獲取的最大利潤。你可以儘可能地完成更多的交易(多次買賣一支股票)。 注意:你不能同時參與多筆交易(你必須在再次購買前出售掉之前的股票)。 示例 1
LeetCode初級演算法——陣列(6)兩個陣列的交集 II
兩個陣列的交集 II 給定兩個陣列,編寫一個函式來計算它們的交集。出那個只出現了一次的元素。 示例 1: 輸入: nums1 = [1,2,2,1], nums2 = [2,2] 輸出: [2,2] 示例 2: 輸入: nums1 = [4,9,5],
leetcode-初級演算法-陣列-兩個陣列的交集 II
題目:兩個陣列的交集 II 給定兩個陣列,編寫一個函式來計算它們的交集。 解決方法: public int[] intersect(int[] nums1, int[] nums2) {
演算法習題(2):Leetcode初級演算法(陣列)
Leetcode初級演算法(陣列) 從排序陣列中刪除重複項 給定一個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。 不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 O(1)
LeetCode(初級演算法)陣列篇---存在重複
題目 給定一個整數陣列,判斷是否存在重複元素。 如果任何值在陣列中出現至少兩次,函式應該返回 true。如果每個元素都不相同,則返回 false。 解析 在這道題裡,我推薦大家使用兩種方法。我的解題方式是能怎麼簡單就怎麼簡單,不追求到效率的極致,在力
LeetCode-探索-初級演算法-陣列-從排序陣列中刪除重複項-java
從排序陣列中刪除重複項 給定一個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。 不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 O(1) 額外空間的條件下完成。 示例 1: 給定陣列 nums =
LeetCode初級演算法練習——陣列篇
陣列篇26. 從排序陣列中刪除重複項給定一個有序陣列,你需要原地刪除其中的重複內容,使每個元素只出現一次,並返回新的長度。不要另外定義一個數組,您必須通過用 O(1) 額外記憶體原地修改輸入的陣列來做到這一點。示例:給定陣列: nums = [1,1,2], 你的函式應該返
C++ Leetcode初級演算法之從排序陣列中刪除重複項
給定一個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。 不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 O(1) 額外空間的條件下完成。 示例 1: 給定陣列 nums = [1,1,2], 函式應該返回新的
leetcode——中級演算法——陣列和字串——無重複字元的最長字串
給定一個字串,找出不含有重複字元的最長子串的長度。 示例1 輸入: "abcabcbb" 輸出: 3 解釋: 無重複字元的最長子串是 "abc",其長度為 3 示例2 輸入: "bbbbb" 輸出: 1 解釋: 無重複字元的最長子串是 "b",其長度為 1。 示例3
C++ Leetcode初級演算法之動態規劃篇
1.爬樓梯 假設你正在爬樓梯。需要 n 階你才能到達樓頂。 每次你可以爬 1 或 2 個臺階。你有多少種不同的方法可以爬到樓頂呢? 注意:給定 n 是一個正整數。 示例 1: 輸入: 2 輸出: 2 解釋: 有兩種方法可以爬到樓頂。 1.1 階 + 1 階 2.2 階 示
C++ Leetcode初級演算法之連結串列篇
1. 刪除連結串列中的節點 請編寫一個函式,使其可以刪除某個連結串列中給定的(非末尾)節點,你將只被給定要求被刪除的節點。 現有一個連結串列 – head = [4,5,1,9],它可以表示為: 4 -> 5 -> 1 -> 9 示例 1: 輸入: h