一道Python面試題

題目:算法

  一個列表,要分爲N組,定義一套規則,實現算法:數據庫

  

解:app

  看到這個題目的時候我首先想到了數據庫的水平分表,利用主鍵id取餘的方式將數據平均存放在N張表中,能夠利用一下:spa

  

ef group(list1, group_number):
    for i in range(group_number):
        list_tmp = []
        for k in list1:
            if k % group_number == i:
                list_tmp.append(k)
        print(list_tmp)


list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
group(list1, 4)


output:
[4, 8, 12, 16]
[1, 5, 9, 13]
[2, 6, 10, 14]
[3, 7, 11, 15]
相關文章
相關標籤/搜索