中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

建設(shè)網(wǎng)站建設(shè)投標(biāo)網(wǎng)1249中官網(wǎng)詞建網(wǎng)站教學(xué)

建設(shè)網(wǎng)站建設(shè)投標(biāo)網(wǎng)1249中官網(wǎng)詞,建網(wǎng)站教學(xué),手機(jī)網(wǎng)站大全排行,外貿(mào)soho先做網(wǎng)站作者簡介:大家好,我是未央; 博客首頁:未央.303 系列專欄:??兔嬖嚤厮OP101 每日一句:人的一生,可以有所作為的時機(jī)只有一次,那就是現(xiàn)在!!!&…

作者簡介:大家好,我是未央;

博客首頁:未央.303

系列專欄:??兔嬖嚤厮OP101

每日一句:人的一生,可以有所作為的時機(jī)只有一次,那就是現(xiàn)在!!!!!

文章目錄

前言

一、二叉搜索樹的最近公共祖先

題目描述

解題分析

二、用兩個棧實(shí)現(xiàn)隊(duì)列

題目描述

解題分析

總結(jié)


前言

一、二叉搜索樹的最近公共祖先

題目描述

描述:

給定一個二叉搜索樹, 找到該樹中兩個指定節(jié)點(diǎn)的最近公共祖先。

1.對于該題的最近的公共祖先定義:對于有根樹T的兩個節(jié)點(diǎn)p、q,最近公共祖先LCA(T,p,q)表示一個節(jié)點(diǎn)x,滿足x是p和q的祖先且x的深度盡可能大。在這里,一個節(jié)點(diǎn)也可以是它自己的祖先.

2.二叉搜索樹是若它的左子樹不空,則左子樹上所有節(jié)點(diǎn)的值均小于它的根節(jié)點(diǎn)的值; 若它的右子樹不空,則右子樹上所有節(jié)點(diǎn)的值均大于它的根節(jié)點(diǎn)的值

3.所有節(jié)點(diǎn)的值都是唯一的。

4.p、q 為不同節(jié)點(diǎn)且均存在于給定的二叉搜索樹中。


數(shù)據(jù)范圍:

3<=節(jié)點(diǎn)總數(shù)<=10000

0<=節(jié)點(diǎn)值<=10000


舉例說明:

如果給定以下搜索二叉樹: {7,1,12,0,4,11,14,#,#,3,5},如下圖:


示例1:


示例2:

解題分析

解題思路:
二叉搜索樹的定義:

二叉搜索樹是一種特殊的二叉樹,它的每個節(jié)點(diǎn)值大于它的左子節(jié)點(diǎn),且大于全部左子樹的節(jié)點(diǎn)值,小于它右子節(jié)點(diǎn),且小于全部右子樹的節(jié)點(diǎn)值。因此二叉搜索樹一定程度上算是一種排序結(jié)構(gòu)。

圖示舉例說明:


思路:

二叉搜索樹沒有相同值的節(jié)點(diǎn),因此分別從根節(jié)點(diǎn)往下利用二叉搜索樹較大的數(shù)在右子樹,較小的數(shù)在左子樹,可以輕松找到p、q;

//節(jié)點(diǎn)值都不同,可以直接用值比較
while(node.val != target) { path.add(node.val);//小的在左子樹if(target < node.val) node = node.left;//大的在右子樹else node = node.right;
}

直接得到從根節(jié)點(diǎn)到兩個目標(biāo)節(jié)點(diǎn)的路徑,這樣我們利用路徑比較就可以找到最近公共祖先。


解題步驟:

  • step 1:根據(jù)二叉搜索樹的性質(zhì),從根節(jié)點(diǎn)開始查找目標(biāo)節(jié)點(diǎn),當(dāng)前節(jié)點(diǎn)比目標(biāo)小則進(jìn)入右子樹,當(dāng)前節(jié)點(diǎn)比目標(biāo)大則進(jìn)入左子樹,直到找到目標(biāo)節(jié)點(diǎn)。這個過程用數(shù)組記錄遇到的元素。
  • step 2:分別在搜索二叉樹中找到p和q兩個點(diǎn),并記錄各自的路徑為數(shù)組。
  • step 3:同時遍歷兩個數(shù)組,比較元素值,最后一個相等的元素就是最近的公共祖先。

圖示過程解析:


代碼編寫:



二、用兩個棧實(shí)現(xiàn)隊(duì)列

題目描述

描述:

用兩個棧來實(shí)現(xiàn)一個隊(duì)列,使用n個元素來完成 n 次在隊(duì)列尾部插入整數(shù)(push)和n次在隊(duì)列頭部刪除整數(shù)(pop)的功能。 隊(duì)列中的元素為int類型。保證操作合法,即保證pop操作時隊(duì)列內(nèi)已有元素。


數(shù)據(jù)范圍:n≤1000;

要求:存儲n個元素的空間復(fù)雜度為 O(n)?,插入與刪除的時間復(fù)雜度都是 O(1)。


示例1:


示例2:


解題分析

解題思路:

雙棧法(推薦使用)

思路:

元素進(jìn)棧以后,只能優(yōu)先彈出末尾元素,但是隊(duì)列每次彈出的卻是最先進(jìn)去的元素,如果能夠?qū)V性厝咳〕鰜?#xff0c;才能訪問到最前面的元素,此時,可以用另一個棧來輔助取出。


解題步驟:

  • step 1:push操作就正常push到第一個棧末尾。
  • step 2:pop操作時,優(yōu)先將第一個棧的元素彈出,并依次進(jìn)入第二個棧中。
  • //將第一個棧中內(nèi)容彈出放入第二個棧中
    while(!stack1.isEmpty()) stack2.push(stack1.pop()); 
    
  • step 3:第一個棧中最后取出的元素也就是最后進(jìn)入第二個棧的元素就是隊(duì)列首部元素,要彈出,此時在第二個棧中可以直接彈出。
  • step 4:再將第二個中保存的內(nèi)容,依次彈出,依次進(jìn)入第一個棧中,這樣第一個棧中雖然取出了最里面的元素,但是順序并沒有變。
  • //再將第二個棧的元素放回第一個棧
    while(!stack2.isEmpty()) stack1.push(stack2.pop());
    

圖示過程解析:


代碼編寫:

總結(jié)

http://www.risenshineclean.com/news/31014.html

相關(guān)文章:

  • 藥房網(wǎng)站模板網(wǎng)絡(luò)推廣方法的分類
  • 沈陽做網(wǎng)站推廣網(wǎng)站關(guān)鍵詞推廣優(yōu)化
  • 深圳o2o網(wǎng)站建設(shè)沈陽seo關(guān)鍵詞
  • 廣州網(wǎng)站改版 網(wǎng)站建設(shè)網(wǎng)站頁面禁止訪問
  • 移動端網(wǎng)站建設(shè)的方案用asp做的網(wǎng)站
  • 如何在網(wǎng)站后臺做網(wǎng)頁代運(yùn)營公司
  • 手機(jī)網(wǎng)站建設(shè)怎么樣網(wǎng)絡(luò)媒體推廣方案
  • 怎樣修wordpress插件頁腳保定seo外包服務(wù)商
  • 成交型網(wǎng)站制作河北seo基礎(chǔ)教程
  • 東莞住房和城鄉(xiāng)建設(shè)局網(wǎng)站網(wǎng)絡(luò)推廣平臺收費(fèi)不便宜
  • 中山市西區(qū)網(wǎng)站制作競價(jià)網(wǎng)
  • 企業(yè)網(wǎng)站的功能模塊微信小程序開發(fā)
  • 沈陽 網(wǎng)站開發(fā)制作java培訓(xùn)機(jī)構(gòu)十強(qiáng)
  • 廣州網(wǎng)站建設(shè) 八爪魚搜索引擎優(yōu)化的簡稱
  • 建設(shè)網(wǎng)站公開教學(xué)視頻下載seo關(guān)鍵詞排名優(yōu)化哪家好
  • 如何做網(wǎng)站滾動屏幕seo網(wǎng)絡(luò)優(yōu)化平臺
  • 深圳專業(yè)做網(wǎng)站建網(wǎng)站價(jià)格圖片優(yōu)化軟件
  • 北京裝飾公司一覽表網(wǎng)站搜索排名優(yōu)化軟件
  • 公司網(wǎng)頁制作h5seo公司怎么樣
  • 汕頭seo公司免費(fèi)的seo優(yōu)化
  • 專業(yè)電容層析成像代做網(wǎng)站北京營銷推廣公司
  • 電話外包接單平臺seo網(wǎng)站優(yōu)化網(wǎng)站編輯招聘
  • 鄭州企業(yè)自助建站系統(tǒng)搜索引擎登錄入口
  • 深圳最新疫情風(fēng)險(xiǎn)等級地區(qū)名單刷seo排名
  • 河北省做網(wǎng)站哪家公司好國際新聞界期刊
  • 網(wǎng)站流量站怎么做百度下載官網(wǎng)
  • 重慶網(wǎng)站建設(shè)推廣seo網(wǎng)站排名助手
  • 做JAVA基礎(chǔ)編程題什么網(wǎng)站好汕頭seo排名
  • 網(wǎng)站項(xiàng)目案例自動搜索關(guān)鍵詞軟件
  • 杭州電子商務(wù)網(wǎng)站建設(shè)百度指數(shù)分析案例