leetcode 刷題筆記(簡單題)陣列篇

2022-10-08 18:24:13 字數 1185 閱讀 1814

//初始化陣列

int a = ;

int b = new int;

arrays.tostring(b);//輸出陣列

int c = new int[3];//指定陣列長度

//新建 arraylist 物件

arraylistarr = new arraylist<>();

arr.add(1);//新增元素 o(1)

arr.add(3,99);//向下標為3的位置新增99這個元素 時間複雜度:o(n)

arr.get(1);//獲取陣列下標為1的元素 時間複雜度:o(1)

arr.set(1,11);//將陣列下標為1 的元素改為99 時間複雜度:o(1)

arr.remove(3);//刪除陣列元素為3的元素 時間複雜度:o(n)

int csize = c.length;//陣列長度

int arrsize = arr.size();// o(n)

給定乙個二進位制陣列nums, 計算其中最大連續1的個數。

示例 1:

輸入:nums = [1,1,0,1,1,1]

輸出:3

解釋:開頭的兩位和最後的三位都是連續 1 ,所以最大連續 1 的個數是 3.

示例 2:

輸入:nums = [1,0,1,1,0,1]

輸出:2

class solution 

for(int i = 0;i給定乙個陣列 nums,編寫乙個函式將所有 0 移動到陣列的末尾,同時保持非零元素的相對順序。

請注意 ,必須在不複製陣列的情況下原地對陣列進行操作。

示例 1:

輸入: nums = [0,1,0,3,12]

輸出: [1,3,12,0,0]

示例 2:

輸入: nums = [0]

輸出: [0]

題解:

class solution  else 

}return left;

}}

Leetcode刷題(簡單題2019 9 3)

當然慢慢的從第一道開始刷咯,用的是python3刷的,c 的太難了,不過也會看。第一題是兩數之和,題目如下 這道題我當時是想用兩個for迴圈暴力求解,然後發現如果其中有乙個數自加得到target的值,這索引就不好處理了。最終選擇用hash表來做,如下 class solution def twosu...

Leetcode刷題筆記

1.兩數之和給定乙個整數陣列nums 和乙個目標值target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。ps 你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。思路 用target減去nums中的每乙個數,並設立乙個字典來記錄對應的下標 class...

LeetCode刷題筆記

實現strstr 給定乙個 haystack 字串和乙個 needle 字串,在 haystack 字串中找出 needle 字串出現的第乙個位置 從0開始 如果不存在,則返回 1。示例 1 輸入 haystack hello needle ll 輸出 2 示例 2 輸入 haystack aaaa...