筆試面試前需要掌握的專業(yè)知識

筆試面試前需要掌握的專業(yè)知識

ID:45590532

大?。?1.36 KB

頁數(shù):23頁

時間:2019-11-15

筆試面試前需要掌握的專業(yè)知識_第1頁
筆試面試前需要掌握的專業(yè)知識_第2頁
筆試面試前需要掌握的專業(yè)知識_第3頁
筆試面試前需要掌握的專業(yè)知識_第4頁
筆試面試前需要掌握的專業(yè)知識_第5頁
資源描述:

《筆試面試前需要掌握的專業(yè)知識》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、需要掌握的知識匯總2007-9-22前面是各種專業(yè)知識及里面所需要掌握的各種重點,后面是一些常用的技術(shù)點數(shù)據(jù)結(jié)構(gòu)1.程序運行中堆與棧的區(qū)別。棧,就是那些由編譯器在需要的時候分配,在不需要的時候自動清楚的變量的存儲區(qū)。里面的變量通常是局部變量、函數(shù)參數(shù)等。堆,就是那些由new分配的內(nèi)存塊,他們的釋放編譯器不去管,由我們的應(yīng)用程序去控制,一般一個new就要對應(yīng)一個deleteo如果程序員沒有釋放掉,那么在程序結(jié)束后,操作系統(tǒng)會自動回收。2.排序二叉樹的增、刪、查等基本操作。先把二叉樹的基本思路和大致操作方法看一下書,然后敲敲代碼練習一下。這里我

2、寫了一個二叉樹的增、查、刪功能,寫得不是很簡潔。#include#includeusingnamespacestd;typedefstructp{intvalue;structp*left;structp*right;}Point;intaddPoint(Point**root,inttargetValue){if(*root==NULL){*root=newPoint();(*root)->left=(*root)->right=NULL;(*root)->value=targetValue;retu

3、rn0;}Point*p=*root;Point*q=*root;while(p!=NULL){q=p;if(q->valueright;elseif(q->value>targetValue)p=q->left;elsereturn0;)p=newPoint();p->left=p->right=NULL;p->value=targetValue;if(q->valueright=p;elseif(q->value>targetValue)q->left=p;return

4、0;)intshowTree(Point*p){if(p==NULL)return0;showTree(p->left);cout?p->value?nH;showTree(p->right);return0;)intdelPoint(Point**root,inttargetValue){if(*root==NULL)return1;〃首先找到要刪除的節(jié)點Point*p=*root;Point*q=p;while(p!=NULL){if(p->value==targetValue)break;q=p;if(q->valuc

5、alue)P=q->right;elseif(q->valuc>targetValue)p=q->Icft;)〃如果沒有對應(yīng)值,則退出if(p==NULL)return1;〃如果p沒冇右子樹,則直接將左子樹上移if(p->right==NULL){if(q->valucright=p->lcft;elseif(q->valuc>targetValue)q->lcft=p->lcft;deletep;return0;)〃如果p冇右子樹,則使用p的后繼替換pPoint*r=p->right;Point*s=p;w

6、hilc(r->lcft!=NULL){s=r;r=r->lcft;)if(s==p){s->right=r->right;}else{s->left=r->right;)if(p==*root)*root=r:else{if(q->valueright=r;elseif(q->value>targetValue)q->left=r;)r->left=p->left;r->right=p->right;deletep;return0;)intmain(intargc,char*argv[]){Point*ma

7、inRoot=NULL;intvaluesf]={10,5,4,2,7,1,20,2,31,5);for(inti=0;i<10;i++){addPoint(&mainRoottvaluesfi]);)showTree(mainRoot);cout?endl;delPoint(&mainRoot,20);showTrcc(mainRoot);cout?cndl;system(”PAUSE”);return0;)3?什么是線索二叉樹。當用二叉鏈表作為二叉樹的存儲結(jié)構(gòu)時,因為每個結(jié)點中只有指向其左、右兒子結(jié)點的指針,所以從任一結(jié)點出發(fā)只能直接找

8、到該結(jié)點的左、右兒子。在一般情況下靠它無法直接找到該結(jié)點在某種遍歷序下的前驅(qū)和后繼結(jié)點、O存放指向結(jié)點在某種遍歷次序下的前驅(qū)和后繼結(jié)點的指針。這種附加的指針稱為線索,加上了線索的

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。