原创 排序算法之 冒泡排序 及其時間複雜度和空間複雜度
冒泡排序(Bubble Sort),是一種計算機科學領域的較簡單的排序算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經
原创 Python性能分析-timeit模塊
基礎用法 import timeit # 測試的函數 def test1(): li = [i for i in range(1000)] # 列表推導式 """ stmt: 需要測試的函數或語句 setup: 運行的環境
原创 同步 異步 阻塞 非阻塞 區別
https://www.cnblogs.com/Anker/p/5965654.html 1、前言 前一段時間出去面試,被問到同步、異步與阻塞、非阻塞的區別。我一時半會沒有想出來,作爲一個工作三年的人來說,實在很慚愧。我當時理解同
原创 一套圖 徹底明白了“時間複雜度”
寫在前面: 這篇文章是在公衆號: 程序員小灰 中發佈的。是我到目前爲止所看到的關於時間複雜度介紹的最好的文章,簡介 清晰 明瞭。 所以拿來po出來 僅供學習交流,如侵則刪。 正文: 時間複雜度的意義
原创 NumPy-常用的統計函數
常用的統計函數 函數 說明 sum 計算數組中的和 mean 計算數組中的均值 var 計算數組中的方差 std 計算數組中的標準差 max 計算數組中的最大值 min 計算數組中的最小值 argmax 返回數組中最大元素的索引 arg
原创 NumPy-簡單的統計分析
數組進行簡單統計分析 直接排序 (1)sort 函數是最常用的排序方法。 格式: arr.sort(); (2)sort 函數也可以指定一個 axis 參數,使得 sort 函數可以沿着指定軸對數據集進行排序。axis=1 爲沿橫軸排
原创 NumPy-讀寫文件
讀寫文件 NumPy 文件讀寫主要有二進制的文件讀寫和文件列表形式的數據讀寫兩種形式 (1) save 函數是以二進制的格式保存數據。 格式: np.save ("./save_arr ", arr1) (2) load 函數是從
原创 NumPy數值計算基礎(數組的創建方法,生成隨機數)
Numpy 簡介 Numpy 是用於數據科學計算的基礎,不但能夠完成科學計算任務,還能被用作高效地多維數據容器。用於存儲和處理大型矩陣。 Python提供了一個 array 模塊,和list 不同,它直接保存數值,但是由於Python的
原创 python+matplotlib繪圖線條類型、顏色、散點類型
python+matplotlib畫圖選色選點 原文章鏈接: http://www.cnblogs.com/darkknightzh/p/6117528.html 參考網址: http://stackoverflow.com/ques
原创 NumPy-ufunc 函數
ufunc 函數 全稱通用函數(universal function),是一種能夠對數組中所有元素進行操作的函數。以 Numpy 數組作爲輸出,因此不需要對數組每個元素都操作,比 math 庫中的函數操作效率更高。 (1)四則運
原创 NumPy數值計算基礎(數組的變化)
變化數組形態 1.組合數組 使用 hstack 函數實現數組橫向組合:np.hstack((arr1,arr2)) 使用 vstack 函數實現數組縱向組合:np.vstack( (arr1,arr2) ) 使用
原创 NumPy數值計算基礎(數組的索引)
數組索引 (1)一維數組索引: 類似於列表切片 import numpy as np arr = np.arange(10) print(arr) # 結果: [0 1 2 3 4 5 6 7 8 9] print(arr[2:6]
原创 NumPy矩陣創建與運算
創建與組合矩陣 使用 mat 函數創建矩陣: matr1 = np.mat("1 2 3; 4 5 6; 7 8 9") 使用 matrix 函數創建矩陣:matr2= np.matrix([[1,2,3], [4,5,6
原创 Python-時間模塊
(1)日曆模塊 calendar() 獲取指定年份的日曆字符串 格式:calendar.calendar(年份,w=2,l=1,c=6,m=3); 返回值:字符串; w表示 2個日期之間的間隔字符長度; l表示 一個周佔用幾個
原创 Python基本的裝飾器用法詳解之二
實現基本的裝飾器 (1)將類作爲參數 class With: #綁定類的方法 def before(): print('我是With類before!') def after():