qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          Python簡單速度測試

           剛開始接觸python,對其飄逸的語法所“震撼”,與其說是在寫代碼,還不如說是在說一段代碼。
            剛開始學吧,寫個簡單的程序練一下手吧,就寫了一個歸并排序的算法
          def merge(num_list,l_b,l_e,r_b,r_e):
          temp=[]
          begin=l_b
          while l_b<=l_e and r_b<=r_e:
          if num_list[l_b] < num_list[r_b]:
          temp.append(num_list[l_b])
          l_b=l_b+1
          else:
          temp.append(num_list[r_b])
          r_b=r_b+1
          while l_b<=l_e:
          temp.append(num_list[l_b])
          l_b=l_b+1
          while r_b<=r_e:
          temp.append(num_list[r_b])
          r_b=r_b+1
          for index in range(0,len(temp)):
          num_list[begin+index]=temp[index]
          def mergeSort(num_list,b,e):
          if b<e:
          mid=int((b+e)/2)
          mergeSort(num_list,b,mid)
          mergeSort(num_list,mid+1,e)
          l_b=b
          l_e=mid
          r_b=mid+1
          r_e=e
          merge(num_list,l_b,l_e,r_b,r_e)
          def main():
          num_list=[5,4,1,7,9,8,6,5,4,7]
          mergeSort(num_list)
          if __name__=="__main__":
          main()
           寫完感覺還不錯,于是乎上網(wǎng)看看別人用python咋寫的。果然出乎我的預料,我仿造其格式,寫了一下
          def mergeSort(num_list):
          if len(num_list)<=1: return num_list
          mid=int(len(num_list)/2)
          return merge(mergeSort(num_list[:mid]),mergeSort(num_list[mid:]))
          def merge(l_list,r_list):
          temp_list=[]
          while l_list and r_list:
          temp_list.append(l_list.pop(0)) if l_list[0]<=r_list[0] else temp_list.append(r_list.pop(0))
          return temp_list+l_list+r_list
            短小精悍,剛開始我懷疑 這么寫的效率有沒有問題啊。因為我原來的算法在函數(shù)之間不用傳參數(shù),就簡單測試一下,再次出乎的預料,通過跑10w次,我原來的算法接近5s,而這個算法不到4秒,好吧,以后還是要使用python的思維寫python代碼,不過真的很優(yōu)雅。

          posted on 2014-06-04 10:57 順其自然EVO 閱讀(305) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2014年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 孟村| 乐都县| 西充县| 诸暨市| 陕西省| 泽州县| 桑植县| 天气| 寻甸| 朔州市| 珠海市| 东阿县| 康定县| 封丘县| 和平县| 旌德县| 兰考县| 凌源市| 东丽区| 汉阴县| 长垣县| 滦南县| 朝阳县| 盈江县| 林周县| 富阳市| 德惠市| 上林县| 和顺县| 新蔡县| 邯郸市| 荥阳市| 青河县| 牡丹江市| 西宁市| 河东区| 五大连池市| 根河市| 新建县| 建阳市| 寿光市|