好运快3

文檔庫

最新最全的文檔下載
當前位置:文檔庫 > 2015年西藏自治區分析數據基礎

2015年西藏自治區分析數據基礎

1、我們用l代表最長平臺的長度,用k指示最長平臺在數組b中的起始位置(下標)。用j記住局部平臺的起始位置,用i指示掃描b數組的下標,i從0開始,依次和后續元素比較,若局部平臺長度(i-j)大于l時,則修改最長平臺的長度k(l=i-j)和其在b中的起始位置(k=j),直到b數組結束,l即為所求。
void Platform (int b[ ], int N)
//求具有N個元素的整型數組b中最長平臺的長度。
{l=1;k=0;j=0;i=0;
while(i{while(iif(i-j+1>l) {l=i-j+1;k=j;} //局部最長平臺
i++; j=i; } //新平臺起點
printf(“最長平臺長度%d,在b數組中起始下標為%d”,l,k);
}// Platform

2、設一棵樹T中邊的集合為{(A,B),(A,C),(A,D),(B,E),(C,F),(C,G)},要求用孩子兄弟表示法(二叉鏈表)表示出該樹的存儲結構并將該樹轉化成對應的二叉樹。
3、假設以I和O分別表示入棧和出棧操作。棧的初態和終態均為空,入棧和出棧的操作序列可表示為僅由I和O組成的序列,稱可以操作的序列為合法序列,否則稱為非法序列。(15分)
(1)A和D是合法序列,B和C 是非法序列。
(2)設被判定的操作序列已存入一維數組A中。
int Judge(char A[])
//判斷字符數組A中的輸入輸出序列是否是合法序列。如是,返回true,否則返回false。
{i=0; //i為下標。
j=k=0; //j和k分別為I和字母O的的個數。
while(A[i]!=‘\0’) //當未到字符數組尾就作。
{switch(A[i])
{case‘I’: j++; break; //入棧次數增1。
case‘O’: k++; if(k>j){printf(“序列非法\n”);exit(0);}
}
i++; //不論A[i]是‘I’或‘O’,指針i均后移。}
if(j!=k) {printf(“序列非法\n”);return(false);}
else {printf(“序列合法\n”);return(true);}
}//算法結束。

4、證明由二叉樹的中序序列和后序序列,也可以唯一確定一棵二叉樹。
29. ① 試找出滿足下列條件的二叉樹
1)先序序列與后序序列相同 2)中序序列與后序序列相同
3)先序序列與中序序列相同 4)中序序列與層次遍歷序列相同

5、我們可用“破圈法”求解帶權連通無向圖的一棵最小代價生成樹。所謂“破圈法”就是“任取一圈,去掉圈上權最大的邊”,反復執行這一步驟,直到沒有圈為止。請給出用“破圈法”求解給定的帶權連通無向圖的一棵最小代價生成樹的詳細算法,并用程序實現你所給出的算法。注:圈就是回路。
6、設指針變量p指向雙向鏈表中結點A,指針變量q指向被插入結點B,要求給出在結點A的后面插入結點B的操作序列(設雙向鏈表中結點的兩個指針域分別為l

好运快3 内蒙古十一选五 七月1日北单比分推荐 甘肃11选5 快速时时彩 半全场 黑龙江p62 浙江20选5 东方6+1 大赢家足球即时比分 即时赔率球探 内蒙古11选5 比分直播新浪竞彩足球 幸运赛车 河南22选5 北京快3 体育比分下载逛球街