新手·ing 发表于 2017-4-3 09:59:48

Python:每日一题 17(答题领鱼币)

有一个整数数组,请求出两两之差绝对值最小的值,
记住,只要得出最小值即可,不需要求出是哪两个数。


如果你认真答题,会得到鱼币奖励!!!
                      如果你认真答题,会得到鱼币奖励!!!
                                              如果你认真答题,会得到鱼币奖励!!!



欢迎小伙伴们,一起答题!
如果你有能力,欢迎加入我们!
已经上车老司机:@ooxx7788 @lumber2388779   
{:10_298:} 点我上车{:10_298:}

**** Hidden Message *****

另一个赚鱼币的快传捷方法!如果你有好题目或者是题库,都给我发过来,马上我就没有题啦!!!传送门

新手·ing 发表于 2017-4-3 10:01:47

@lumber2388779 @ooxx7788 @gopythoner @冬雪雪冬 @jerryxjr1220
老伙计们{:10_256:}来吧!还有,给我提供点Python题吧{:10_266:}我快没题了{:10_250:}

黑色蒙面人 发表于 2017-4-3 12:29:34

def foo(data):
    b=[]
    le = len(data)
    for i in range(0,le):
      b.append(data)
    min=abs(data-b)
    for i in range(le):
      for j in range(le):
            if i == j:
                break
            if abs(data-b)< min:
                min=abs(data-b)
    return min

a=
print(foo(a))

gopythoner 发表于 2017-4-3 13:35:16

def test17(my_list):
    the_list = []
    for i in my_list:
      for k in my_list:
            n = abs(i-k)
            the_list.append(n)
    # 下面2句是为了清除差列表中自身相减得到的0
    for t in range(1,len(my_list)+1):
      the_list.remove(0)
    minnum = min(the_list)
    return minnum

if __name__ == '__main__':
    a =
    print(test17(a))

>>>1

18813034116 发表于 2017-4-3 15:19:55

#coding=cp936
array=input('请输入一个整数数组:')
check=0
#设置一个变量check用于检测用户输入的是否是纯整数数组,check为1时才可进行查找最小值
while True:
    global check
    for i in array:
      if not isinstance(i,int):
            array=input('输入有误,请重新输入:')
            break
      else:
            check=1
            #输入数组检测
    if check==1:
      result_array=[]
      for i in array:
            for j in array:
                result_array.append(i-j)
      break
            #让原数组中的每个元素依次与其后面元素相减,并把差值塞入数组result_array
for i in result_array:
    result_array=abs(i)
    #将result_array数组中的每一个值转换为绝对值
result_array.sort()
    #对result_array数组进行排序
print '最小差为'+str(result_array)

yjq随风 发表于 2017-4-3 15:28:09

为什么我都不会做呜呜{:10_266:}

新手·ing 发表于 2017-4-3 15:37:42

yjq随风 发表于 2017-4-3 15:28
为什么我都不会做呜呜

再多学习吧,我也是新手的{:10_256:}

新手·ing 发表于 2017-4-3 15:38:30

@冬雪雪冬 还不快来{:10_256:}{:10_256:}

灵饕餮 发表于 2017-4-3 16:51:25

本帖最后由 灵饕餮 于 2017-4-3 16:52 编辑

def foo(s):
        w = []
        for i in range(len(s)-1):
                result = abs(s-s)
                w.append(result)
        print(min(w))
test =
foo(test)

冬雪雪冬 发表于 2017-4-3 17:27:54

新手·ing 发表于 2017-4-3 15:38
@冬雪雪冬 还不快来

俺来了~~
lst =
lst.sort()
m = min( - lst) for i in range(len(lst) - 1)])
print(m)

新手·ing 发表于 2017-4-3 22:01:27

冬雪雪冬 发表于 2017-4-3 17:27
俺来了~~

{:10_254:}支持~

shanghaiymy 发表于 2017-4-4 09:55:52

我来答题的

新手·ing 发表于 2017-4-4 09:59:46

shanghaiymy 发表于 2017-4-4 09:55
我来答题的

答题吧{:10_277:}

shigure_takimi 发表于 2017-4-5 11:53:37

def getMin(integerList):
    sortedList = sorted(integerList)
    subList = []
    for i in range(len(integerList)):
      subList.append(abs(sortedList - sortedList))
    return min(subList)

a =
print(getMin(a))                #Output --> 1


b =
print(getMin(b))                #Output --> 1

Deast 发表于 2017-4-5 13:20:34

看看

wxm9977 发表于 2017-4-5 13:23:08

好好学习,天天向上

lovesword 发表于 2017-4-5 14:57:35

#!/usr/bin/env python
# coding=utf-8
#python 2.7
from itertools import combinations
print min(-i) for i in combinations(, 2)])
print reduce(lambda x,y: ,-i) for i in combinations(, 2)])

qina1020 发表于 2017-4-6 08:31:54

lists1=input('请输入一个整数组:')
lists2=[]
for i in range(1,len(lists1)):
    lists2.append(abs(lists1-lists1))
print(min(lists2))

余欲渔 发表于 2017-4-11 22:37:25

本帖最后由 余欲渔 于 2017-4-11 22:41 编辑

随机生成两组30位的数组,合并成y并排序好,两两求差放入x,x求绝对值,输出x的最小值
import random
n=30
y1=
y2=
y=sorted(y1+y2)
print(y)
x=[]
for i in range(n-1):
    x.append(y-y)
x=
print(min(x))

奔跑的小鱼 发表于 2017-4-14 14:15:19

本帖最后由 奔跑的小鱼 于 2017-4-14 14:17 编辑

s=
sorted(s)
a=-s) for i in range(1,len(s))]
print(min(a))

{:5_91:}
页: [1] 2 3 4 5 6 7 8
查看完整版本: Python:每日一题 17(答题领鱼币)