題目給定一個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。說明:葉子節點是指沒有子節點的節點。示例:給定二叉樹[3,9,20,null,null,15,7],3/920/157返回它的最大深度3。思路BFS廣度優先搜索,使用雙端隊列deque(因為性能比另外兩種Queue好得多),在大循環內對二叉樹的每個層做一次遍歷,range(len(queue))使只遍歷當前的層,每次大循環ans加1。由于每個節點僅訪問一次,所以時間
系統 2019-09-27 17:56:23 1704
本文實例講述了python數據結構之Array用法,分享給大家供大家參考。具體方法如下:importctypesclassArray:def__init__(self,size):assertsize>0,"Arraysizemustbe>0"self._size=sizepyArrayType=ctypes.py_object*sizeself._elements=pyArrayType()self.clear(None)defclear(self,va
系統 2019-09-27 17:55:37 1704
本文實例講述了python連接oracle數據庫的方法,分享給大家供大家參考。具體步驟如下:一、首先下載驅動:(cx_Oracle)http://www.python.net/crew/atuining/cx_Oracle/不過要注意一下版本,根據你的情況加以選擇。二、安裝:首先配置oracle_home環境變量執行那個exe安裝程序就可以了,它會copy一個cx_Oracle.pyd到Libsite-packages目錄下。如果是linux,執行復制代碼
系統 2019-09-27 17:55:16 1704
基于python-opencv3的圖像顯示和保存操作,具體代碼如下所示:importcv2ascvimportnumpyasnp#導入庫print("-------------------------------")image=cv.imread("D:/1.jpeg")#寫入圖像cv.imshow("image",image)#顯示cv.waitKey()#等待cv.destroyAllWindows()#關閉所有窗口cv.imwrite("D:\\2.
系統 2019-09-27 17:54:55 1704
Python單元測試unittest中提供了一下四種裝飾器實現測試跳過和預期故障。(使用Python2.7.13)請查考Python手冊中:https://docs.python.org/dev/library/unittest.htmlThefollowingdecoratorsimplementtestskippingandexpectedfailures:#以下裝飾器實施測試跳過和預期故障:@unittest.skip(原因)Unconditiona
系統 2019-09-27 17:54:46 1704
本文實例講述了Python實現生成密碼字典的方法。分享給大家供大家參考,具體如下:key_data.py文件存放組成數據,可以隨時擴充及簡化。#coding=utf-8#!/usr/bin/pythondefyear():#返回字符串類型的年份列表year=range(1984,2018)#常用年份列表year_str=[]foryinyear:year_str.append(str(y))returnyear_strdefmonth_or_day(n):
系統 2019-09-27 17:54:41 1704
本文實例講述了Python裝飾器decorator用法。分享給大家供大家參考。具體分析如下:1.閉包(closure)閉包是Python所支持的一種特性,它讓在非globalscope定義的函數可以引用其外圍空間中的變量,這些外圍空間中被引用的變量叫做這個函數的環境變量。環境變量和這個非全局函數一起構成了閉包。復制代碼代碼如下:defouter(x):y=[1,2,3]definner():printxprintyreturninnerx=5#這個x沒有被
系統 2019-09-27 17:54:34 1704
一些討論Python中使用配置文件的最佳實踐Python中使用配置文件的最好方法Python符號常量多種配置文件方案對比我的建議1.排除yamlyaml不是一個好主意,因為需要給項目引入額外的依賴。首先排除它,除非是你的個人項目,或者你的項目已經引入了這個package。2.使用setting.py如果你只是需要配置一些全局的符號常量(symbolicconstants),參考Django的做法,使用setting.py,參見:https://github
系統 2019-09-27 17:54:23 1704
廢話不多說,直接上代碼#Author:LancyWuproduct_list=[('Iphone',5800),('MacPro',9800),('Bike',800),('Watch',10600),('Coffee',31),('LancyPython',120)]#商品列表shopping_list=[]#定義一個列表來存儲已購商品salary=input("請輸入工資:")ifsalary.isdigit():#當輸入的內容為數字salary=in
系統 2019-09-27 17:54:07 1704
Python面向對象編程——總結面向對象的優點一、從代碼級別看面向對象1、在沒有學習類這個概念時,數據與功能是分離的defexc1(host,port,db,charset):conn=connect(host,port,db,charset)conn.execute(sql)returnxxxdefexc2(host,port,db,charset,proc_name)conn=connect(host,port,db,charset)conn.call
系統 2019-09-27 17:53:53 1704