知識(shí)點(diǎn):樹(shù)的層數(shù)和高度和深度 首先要介紹樹(shù)的層數(shù):頂點(diǎn)的層數(shù)是從根到該頂點(diǎn)唯一通路的長(zhǎng)度。 樹(shù)的深度 = 層數(shù) 樹(shù)的高度 = 層數(shù) + 1 就拿這棵樹(shù)來(lái)說(shuō) 這棵樹(shù)的高度是3,...
題目: 對(duì)于一棵二叉樹(shù),請(qǐng)?jiān)O(shè)計(jì)一個(gè)算法,創(chuàng)建含有某一深度上所有結(jié)點(diǎn)的鏈表。 給定二叉樹(shù)的根結(jié)點(diǎn)指針TreeNode* root,以及鏈表上結(jié)點(diǎn)的深度,請(qǐng)返回一個(gè)鏈表ListN...
請(qǐng)?jiān)O(shè)計(jì)一個(gè)算法,尋找二叉樹(shù)中指定結(jié)點(diǎn)的下一個(gè)結(jié)點(diǎn)(即中序遍歷的后繼)。 給定樹(shù)的根結(jié)點(diǎn)指針TreeNode* root和結(jié)點(diǎn)的值int p,請(qǐng)返回值為p的結(jié)點(diǎn)的后繼結(jié)點(diǎn)的值。...
有個(gè)小孩正在上樓梯,樓梯有n階臺(tái)階,小孩一次可以上1階、2階、3階。請(qǐng)實(shí)現(xiàn)一個(gè)方法,計(jì)算小孩有多少種上樓的方式。為了防止溢出,請(qǐng)將結(jié)果Mod 1000000007 給定一個(gè)正...
題目: 有一個(gè)XxY的網(wǎng)格,一個(gè)機(jī)器人只能走格點(diǎn)且只能向右或向下走,要從左上角走到右下角。請(qǐng)?jiān)O(shè)計(jì)一個(gè)算法,計(jì)算機(jī)器人有多少種走法。注意這次的網(wǎng)格中有些障礙點(diǎn)是不能走的。 給定...
題目: 有一個(gè)XxY的網(wǎng)格,一個(gè)機(jī)器人只能走格點(diǎn)且只能向右或向下走,要從左上角走到右下角。請(qǐng)?jiān)O(shè)計(jì)一個(gè)算法,計(jì)算機(jī)器人有多少種走法。
在數(shù)組A[0..n-1]中,有所謂的魔術(shù)索引,滿(mǎn)足條件A[i]=i。給定一個(gè)升序數(shù)組,元素值各不相同,編寫(xiě)一個(gè)方法,判斷在數(shù)組A中是否存在魔術(shù)索引。請(qǐng)思考一種復(fù)雜度優(yōu)于o(n...
題目 在數(shù)組A[0..n-1]中,有所謂的魔術(shù)索引,滿(mǎn)足條件A[i]=i。給定一個(gè)不下降序列,元素值可能相同,編寫(xiě)一個(gè)方法,判斷在數(shù)組A中是否存在魔術(shù)索引。請(qǐng)思考一種復(fù)雜度優(yōu)...
dict的性能遠(yuǎn)遠(yuǎn)高于list 在list中隨著數(shù)據(jù)量的增大,查找時(shí)間也會(huì)增大 在dict中隨著數(shù)據(jù)量的增大,查找時(shí)間不會(huì)增大 原因: 因?yàn)閐ict使用哈希表實(shí)現(xiàn)的,也就是散...
列表推導(dǎo)式用途 1 生成一個(gè)列表2 借助函數(shù)完成復(fù)雜邏輯運(yùn)算 生成器 生成器是用推導(dǎo)式生成一個(gè)可以迭代的對(duì)象生成器是可以轉(zhuǎn)化為一個(gè)list的 生成器只有一個(gè);把它變成列表或者...
array的初始化需要指定數(shù)據(jù)類(lèi)型,它不像list可以存放任意類(lèi)型數(shù)據(jù),可以混合存放;array只可以存放一種數(shù)據(jù),并且初始化時(shí)要說(shuō)明‘b’ 指的是有符號(hào)的整形
自己去實(shí)現(xiàn) def getitem(self, item) 函數(shù),讓它返回一個(gè)還可以切片,迭代的對(duì)象,比原來(lái)單純返回切片對(duì)象高級(jí)