t5. 完全二叉樹共有 2×n
−1
2\times n-1
2×n−
1 個結點,則它的葉結點數是(n
)。
【解析】有 2×nt16. 物件導向程式設計(object-oriented programming)是一種程式設計的方**,它將物件作為程式的基本單元,將資料和程式封裝在物件中,以提高軟體的重用性、靈活性和擴充套件性。下面關於物件導向程式設計的說法中,不正確的是( )。−1
2\times n-1
2×n−
1 個結點的完全二叉樹,最後乙個擁有孩子結點的父結點的編號為⌊2n
−12⌋
=n−1
\lfloor \frac\rfloor=n-1
⌊22n−1
⌋=n
−1,那麼葉結點數=2×
n−1−
(n−1
)=
n=2\times n - 1 - (n - 1) = n
=2×n−1
−(n−
1)=n
。
【解析】選項:物件導向程式設計通常採用自頂向下設計方法進行設計,是錯誤的。程式設計的方法包括:結構化設計和物件導向設計方法。結構化的程式設計通常採用自頂向下的設計方法,逐步求精。可以說,是大問題化成小問題,逐個求解。t17. 在 32×32
32\times32
32×3
2 點陣的「字型檔」中,漢字「北」與「京」的字模占用位元組數之和是(256
)。
【解析】 在 32×32t2. 書架上有 4 本不同的書 a、b、c、d。其中 a 和 b 是紅皮的,c 和 d 是黑皮的。把這 4 本書擺在書架上,滿足所有黑皮的書都排在一起的擺法有(32\times32
32×3
2點陣的「字型檔」中,每個字模占用的位元組數為:32×32
÷8
=128
32\times32\div8=128
32×32÷
8=12
8。漢字「北」與「京」的字模占用位元組數之和是
256
。
12
)種。滿足 a 必須比 c 靠左,所有紅皮的書要擺放在一起,所有黑皮的書要擺放在一起,共有(4
)種擺法。
【解析】
t4.
#include
#include
using
namespace std;
#define max 100
void
solve
(char first,
int spos_f,
int epos_f,
char mid,
int spos_m,
int epos_m)
solve
(first, spos_f +
1, spos_f +
(root_m - spos_m)
, mid, spos_m, root_m -1)
;solve
(first, spos_f +
(root_m - spos_m)+1
, epos_f, mid, root_m +
1, epos_m)
; cout << first[spos_f];}
intmain()
輸入:
7輸出:abdcegf
bdagecf
dbgefca
【解析】輸入二叉樹的先根遍歷序列和後根遍歷序列,求後根遍歷序列。t1.(字串替換)給定乙個字串 s(s 僅包含大小寫字母),下面的程式將 s 中的每個字母用規定的字母替換,並輸出 s 經過替換後的結果。程式的輸入是兩個字串,第乙個字串是給定的字串 s,第二個字串 s』 由 26 個字母組成,它是 a−z 的任一排列,大小寫不定,s』 規定了每個字母對應的替換字母:s 中的第乙個字母是字母 a 和 a 的替換字母,即 s 中的 a 用該字母的大寫替換, s 中的 a 用該字母的小寫替換;s』 中的第二個字母是字母 b 和 b 的替換字母,即 s 中的 b 用該字母的大寫替換,s 中的 b 用該字母的小寫替換;……以此類推。
#include
#include
char change[26]
, str[
5000];
using
namespace std;
void
checkchangerule()
}void
changestring()
}int
main()
【解析】t2. (找第 k 大的數)給定乙個長度為 1,000,000 的無序正整數序列, 以及另乙個數 n (1≤n
≤1000000
1\le n\le1000000
1≤n≤10
0000
0), 然後以類似快速排序的方法找到序列中第 n 大的數(關於第 n 大的數:例如序列 中第 3 大的數是 4)。
#include
using
namespace std;
int a[
1000001
],n,ans =-1
;void
swap
(int
&a,int
&b)int
findkth
(int left,
int right,
int n)
else
break
;while
(i < j && ③) i++;if
(i < j)
else
break;}④if
(i < n)
return
findkth
( ⑤ );if
(i > n)
return ⑥
return i;
}int
main()
【解析】通過快速排序的思想,查詢第n
大的數。根據輸出cout << a[ans];
,可以確定是將序列按照從大到小的順序進行排列。函式findkth()
將陣列分成兩部分,左邊由大於等於value
的數組成,右邊由小於value
的數組成。
NOIP2008普及組題解
noip2008普及組題解 從我在其他站的部落格直接搬過來的 posted 2016 04 16 01 11 t1 isbn號碼 每一本正式出版的圖書都有乙個isbn號碼與之對應,isbn碼包括9位數字 1位識別碼和3位分隔符,其規定格式如 x xx x 其中符號 就是分隔符 鍵盤上的減號 最後一位...
NOIP2008普及組 排座椅
問題描述 上課的時候總有一些同學和前後左右的人交頭接耳,這是令小學班主任十分頭疼的一件事情。不過,班主任小雪發現了一些有趣的現象,當同學們的座次確定下來之後,只有有限的d對同學上課時會交頭接耳。同學們在教室中坐成了m行n列,坐在第i行第j列的同學的位置是 i,j 為了方便同學們進出,在教室中設定了k...
NOIP2008 普及組 ISBN 號碼
題目鏈結 題目描述 每一本正式出版的圖書都有乙個isbn號碼與之對應,isbn碼包括9位數字 1位識別碼和3位分隔符,其規定格式如x xx x,其中符號 就是分隔符 鍵盤上的減號 最後一位是識別碼,例如0 670 82162 4就是乙個標準的isbn碼。isbn碼的首位數字表示書籍的出版語言,例如0...