2018暑假第五題

2021-08-21 23:34:53 字數 1386 閱讀 8994

給定乙個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。

不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 o(1) 額外空間的條件下完成。(python)

示例 1:

給定陣列 nums =[1,1,2], 

函式應該返回新的長度2, 並且原陣列 nums 的前兩個元素被修改為1, 2

你不需要考慮陣列中超出新長度後面的元素。

示例 2:

給定nums =[0,0,1,1,1,2,2,3,3,4],

函式應該返回新的長度5, 並且原陣列 nums 的前五個元素被修改為0, 1,2,3,4

你不需要考慮陣列中超出新長度後面的元素。

說明:

為什麼返回數值是整數,但輸出的答案是陣列呢?

請注意,輸入陣列是以「引用」方式傳遞的,這意味著在函式裡修改輸入陣列對於呼叫者是可見的。

你可以想象內部操作如下:

//nums是以「引用」方式傳遞的。也就是說,不對實參做任何拷貝

int len = removeduplicates(nums);

// 在函式裡修改輸入陣列對於呼叫者是可見的。

// 根據你的函式返回的長度, 它會列印出陣列中該長度範圍內的所有元素。

for (int i = 0; i < len; i++)

**:class solution(object):

def removeduplicates(self, nums):

""":type nums: list[int]

:rtype: int

"""if len(nums) == 0:

return 0

i = 0   #慢指標

j = 1   #快指標

for j in range(1,len(nums)):         

if nums[j] <> nums[i]:

i+=1

nums[i] = nums[j]

return i + 1

第五題(重寫,過載)

很基礎的乙個題 談談override,overload,polymorphism override 重寫 覆蓋 overload 過載 polymorphism 多型 override是重寫 覆蓋 了乙個方法,以實現不同的功能。一般是用於 子類在繼承父類時,重寫 重新實現 父類中的方法。重寫 覆蓋 ...

專題二 第五題

1.題目編號 1016 2.簡單題意 有乙個矩形的房間,鋪著正方形的瓷磚,每乙個瓷磚的顏色不是紅色就是黑色。乙個人站在乙個黑色的瓷磚上,他可以移動到相鄰的四個瓷磚的乙個,但是他不能移動到紅色的瓷磚上,他只能移動到黑色的瓷磚上,寫乙個程式來計算這個人通過不斷迴圈移動上述描述到達黑色瓷磚的數目。給你w,...

專題三 第五題

1.題目編號 1013 2.簡單題意 有一頭母牛,它每年年初生一頭小母牛。每頭小母牛從第四個年頭開始,每年年初也生一頭小母牛。請程式設計實現在第n年的時候,共有多少頭母牛?3.解題思路形成過程 這個題和上面的題都差不多,重點找到第n年的奶牛數,與其他年的規律,從第四年開始就有 f i f i 1 f...