一、机器学习类库资料(Scipy Lecture Notes)

参考链接: https://wizardforcel.gitbooks.io/scipy-lecture-notes/content/0.html


二、练习题

练习:斐波那契数列
写一个函数来展示斐波那契数列的前n个项目,定义如下:
- u_0 = 1; u_1 = 1
- u_(n+2) = u_(n+1) + u_n

答案:
def fb(n):
    u_0 = 1
    u_1 = 1
    if n == 0:
        return [1]
    elif n == 1:
        return [1,1]
    else:
        temp = [u_0,u_1]
        for i in range(n):
            if i >= 2:
                res = temp[i-1] + temp[i-2]
                temp.append(res)

        return temp
        
练习:快速排序
def quick_sort(list_,start,end):
    if start >= end:
        return

    cmp_index = start
    for i in range(start+1,end):
        if list_[i] < list_[cmp_index]:
            tmp = list_[i]
            del list_[i]
            list_.insert(cmp_index,tmp)
            cmp_index += 1

    quick_sort(list_,start=start,end=cmp_index-1)
    quick_sort(list_,start=cmp_index+1,end=len(list_))

num = [4,7,1,-2,6,3,2,3]
quick_sort(num,0,len(num))
print(num)