再戰CS231 快速排序

2022-03-31 09:13:23 字數 1101 閱讀 3674

1.用python實現快速排序

print quicksort([3,6,8,10,1,2,1])

# prints "[1, 1, 2, 3, 6, 8, 10]"

'''

@author :eric-chen

@contact:[email protected]

@time :2017/12/24 23:49

@desc :write a method to realize print(quicksort([2,3,6,7,2,4,12,3]))

思路:不斷的找中間的數,比中間小的放左邊 相同的放中間 比中間大的放右邊 然後遞迴

'''def quicksort(arr):

if len(arr) <= 1:

return arr

pivot = arr[len(arr)//2]

left = [x for x in arr if x < pivot]

middle = [x for x in arr if x == pivot]

right=[x for x in arr if x>pivot]

return quicksort(left)+quicksort(middle)+quicksort(right)

print(quicksort([1,12,5,4,12,3]))

遇到的問題:1.typeerror: list indices must be integers or slices, not float

答案:in python 3.x, the / operator performs floating point division. if you want int division use // 在python3,x,/ 代表有小數點的商,如果想要整數的話,用//

2.recursionerror: maximum recursion depth exceeded in comparison

答案:quicksort(middle)middle中的數都是相等的,會無限次的迴圈下去的

cs231 線性分類

k nearest neighbor分類器存在以下不足 分類器必須記住所有訓練資料並將其儲存起來,以便於未來測試資料用於比較。這在儲存空間上是低效的,資料集的大小很容易就以gb計。對乙個測試影象進行分類需要和所有訓練影象作比較,演算法計算資源耗費高。引言 我們將要實現一種更強大的方法來解決影象分類問...

CS231 線性分類

評分函式 原始影象資料到類別分值的對映 損失函式 用來量化 分類標籤的得分與真實標籤之間一致性的 現在假設有乙個包含很多影象的訓練集 公式 每個影象都有乙個對應的分類標籤 公式 這裡 公式 並且 公式 這就是說,我們有n個影象樣例,每個影象的維度是d,共有k種不同的分類。如,在cifar 10中,我...

cs231以及遷移學習

以這個2元分類為例,不normalization的話,loss非常敏感,分類器稍微改變一下,對loss的影響很大。normalization後問題得到解決。在cnn中我們希望每層都normalization,可以用batch normalization velocity初始值是0 逐引數調節學習率,...