好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

bisect数组的二分算法

本模块实现已经排序的队列列表插入元素之后保持排序。对于个大量数据的列表来看,插入元素并保持排序,计算量是非常大的。本模块实现了bisect算法,主要基于二分算法来实现。

import bisect

def grade(score, breakpoints=[60, 70, 80, 90], grades='FDCBA'):

i = bisect.bisect(breakpoints, score)

return grades[i]

print([33, 99, 77, 70, 89, 90, 100])

print([grade(score) for score in [33, 99, 77, 70, 89, 90, 100]])

结果 输出如下:

[33, 99, 77, 70, 89, 90, 100]

['F', 'A', 'C', 'C', 'B', 'A', 'A']

查看更多关于bisect数组的二分算法的详细内容...

  阅读:41次