中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

python怎么寫區間函數

九三
2220
2021-01-22 08:13:49
欄目: 編程語言

python怎么寫區間函數

在python中書寫區間函數的方法

1.合并區間

def merge(intervals):

'''

@msg: //合并多個區間

@param intervals {list} //一個二維數組,每一項代表一個區間

@return: {list} //返回合并后的區間列表

'''

intervals = [sorted(x) for x in intervals]

intervals.sort(key=lambda x: x[0])

merged = []

for interval in intervals:

if not merged or merged[-1][1] < interval[0]:

merged.append(interval)

else:

merged[-1][1] = max(merged[-1][1], interval[1])

return merged

2.判斷區間

def relation(interval1,interval2):

'''

@msg: //判斷兩個區間的關系

@param interval1 {list} //第一個區間

@param interval2 {list} //第二個區間

@return: {int} //返回兩個區間的關系,0:兩個區間相等、1:兩個區間相離、2:兩個區間相交、3:兩個區間為包含關系

'''


min1,max1=sorted(interval1)

min2,max2=sorted(interval2)

if(min1==min2 and max1==max2):return 0

if(max1<min2 or="" max2<min1):return="" 1if(min1<min2<=max1<max2 or="" min2<min1<="max2<max1):return" 2if(min1<=min2<=max2<=max1 or min2<=min1<=max1<=max2):return 3


3.求區間的交集

def intersection(interval1,interval2):

'''

@msg: //求兩個區間的交集

@param interval1 {list} //第一個區間

@param interval2 {list} //第二個區間

@return: {list} //若兩個區間存在交集,則返回交集,否則返回空列表

'''

nums=sorted(interval1+interval2)

if relation(interval1,interval2) != 1:

return [nums[1],nums[2]]

else:return []



0
宿松县| 色达县| 定结县| 来凤县| 沂水县| 滦南县| 乐东| 民权县| 嵊州市| 宁海县| 邮箱| 青阳县| 九台市| 凤凰县| 酒泉市| 牙克石市| 遵义县| 舒兰市| 衢州市| 尖扎县| 拜泉县| 青浦区| 上饶县| 岳西县| 宁波市| 泰来县| 苗栗市| 天峻县| 衡阳市| 社旗县| 余姚市| 普格县| 鲁山县| 泽普县| 常德市| 洮南市| 安新县| 崇仁县| 台江县| 巴彦淖尔市| 额尔古纳市|