def
gettwoclosestelements
(arr)
:#先進行排序,使得相鄰元素最接近
#相差最小的元素必然相鄰
seq =
sorted
(arr)
#先進行排序
dif =
float
('inf'
)#無窮大
#遍歷所有元素,兩兩比較,比較相鄰元素的差值
#使用選擇法尋找相差最小的兩個元素
for i,v in
enumerate
(seq[:-
1]):
#i,v均為已排序列表seq中的元素,其中i,v相鄰
d =abs(v - seq[i+1]
)#選擇排序法,後面的元素減去前面的元素得到的值的絕對值為d
if d < dif:
#合法,相鄰直接差值比無窮大要小
first, second, dif = v, seq[i+1]
, d#d存放兩數之差的絕對值,用於接下來繼續比較差值,找差值最小的、這裡的seq[:-1]是倒著來的,所以v在前,seq[i+1]在後
#返回相差最小的兩個元素
return
(first, second)
arr=
n=int
(input
("請輸入要給定序列中的元素個數:"))
print
("請依次輸入給定序列各元素的值:"
)for i in
range
(n):
int(
input()
))print
('給定序列為:%s'
% arr)
print
('給定序列排序之後為:%s'
%sorted
(arr)
)print
("相差最小的兩個數字:"
,end="")
print
(gettwoclosestelements(arr)
)
python之在序列中尋找不同的元素
a list the sixth sick sheik s sixth sheep s sick set a list 利用set的唯一屬性,的確是個不錯的主意,呵呵 a string east is east set a string words send more money join word...
python中的序列化 python中序列化
1.序列化之json 注意 如果我們要在不同的程式語言之間傳遞物件,就必須把物件序列化為標準格式 比如xml,但更好的方法是序列化為json,因為json表示出來就是乙個字串,可以被所有語言讀取,也可以方便地儲存到磁碟或者通過網路傳輸。json不僅是標 準格式,並且比xml更快,而且可以直接在web...
python中如何刪除列表中給定的元素
我們有時候需要刪除python中列表的元素,今天介紹三種常用的方法 remove pop del 1 remove 用於刪除指定名稱的元素demo 1 2,2 3,3 3,a b c demo.remove a print demo 輸出如下 1,2,2,3,3,3,b c 2 pop 用於刪除指定...