第一題:在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
# -*- coding:utf-8 -*-
class
solution:
# array 二維列表
deffind
(self, target, array):
# write code here
for i in range(len(array)):
for j in range(len(array[i])):
if target == array[i][j]:
return
'true'
return
'false'
s = solution()
target = 4
array = [[2, 3]]
print(s.find(target, array))
# -*- coding:utf-8 -*-python中將list轉換為字串class
solution:
# s 源字串
defreplacespace
(self, s):
# write code here
s2 =
s = list(s)
for str1 in s:
if str1 == " ":
else:
return
''.join(s2)
s = solution()
命令:」.join(list)
其中,引號中是字元之間的分割符,如「,」,「;」,「\t」等等
如: list = [1, 2, 3, 4, 5]
」.join(list) 結果即為:12345
『,』.join(list) 結果即為:1,2,3,4,5
劍指offer第二題
最直觀的做法是從頭往後開始掃瞄,但是這樣複雜度為o n 2 o n 的做法是從後往前開始複製和替換。先求出替換後的字串大小,然後用兩個指標 index 從後往前複製,如果遇上空格,直接替換為 20 public class solution int oldindex str.length 1 int...
劍指offer第二題
請實現乙個函式,將乙個字串中的空格替換成 20 例如,當字串為 則經過替換之後的字串為 分析 考場陣列的操作,主要是從頭到尾的操作要消耗o n 複雜度,如果完成插值,則為o n2 所以要從尾部倒過來轉移。注意 本題有兩點要考慮。其一,注意錯誤的返回值為return,而不是return false。其...
劍指Offer第一題
在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。思路 從數值中間開始查詢,根據題意,二維陣列的左上角是最小值,二維陣列的右下角是最大值,從中間數值查詢是最節約時間的,可以從左下角或者...