牛客網關於陣列的練習題記錄

2021-07-24 08:56:39 字數 1776 閱讀 7685

1.對矩陣壓縮儲存是為了()

a,方便運算

b,方便儲存

c,提高運算速度

d,減少儲存空間

答案:d

解析:不管是鄰接矩陣還是鄰接表,都節省了儲存空間

2.(單選題) 有兩個n*n的矩陣a和b,想要在pc上按矩陣乘法基本演算法程式設計實現計算a*b。假設n較大,本機記憶體也很大,可以存下a、b和結果矩陣。那麼,為了計算速度,a和b在記憶體中應該如何儲存(按行存指先儲存第一行,再第二行,直到最後一行;按列存指先儲存第一列,再第二列,直到最後一列)?

a,a按行存,b按行存

b,a按行存,b按列存

c,a按列存,b按行存

d,a按列存,b按列存

答案:b

解析:

3.(1)靜態鍊錶既有順序儲存的優點,又有動態鍊錶的優點。所以,它訪問表中第i個元素的時間與i無關。

(2)靜態鍊錶中能容納的元素個數的最大數在表定義時就確定了,以後不能增加.

(3)靜態鍊錶與動態鍊錶在元素的插入、刪除上類似,不需做元素的移動。

以上錯誤的是()

1/1a (1),(2)

b (1)

c (1),(2),(3)

d (2)

答案:b

解析:(1)錯,(2)(3)對。 

靜態鍊錶是用陣列儲存節點資料,模擬鍊錶的實現,但是沒有用到指標。每個陣列節點包括兩部分:data域和cursor(游標)域。data儲存資料,cursor指明下個元素在陣列中的下標。 

(1)訪問第i個元素時,需要從頭遍歷到i-1和元素,由第i-1個節點的cursor,才能知道第i個元素儲存的位置,因此和i是相關的。 

(2)使用陣列對元素進行儲存,在定義時大小已經確定。 

(3)插入和刪除操作無需移動元素,只需要修改cursor游標的值即可,就像修改動態鍊錶中的指標一樣。 

4.a為整數陣列, n為a的陣列長度,請問執行以下**,最壞情況下的時間複雜度為____。 1

2

3

4

5

6

7

8

9

10

11

voidfun(inta,intn)

}

}

}

1/1a o(n)

b o(n^2)

c o(nlog(n))

d o(log(n))

e o(n^3)

f 無法確定

答案:b

解析:

氣泡排序法,最壞情況為(n-1)+(n-2)+……+1=n(n-1)/2   所以複雜度是n^2

5.有乙個二維陣列a[1...100 , 1...65]有100行,65列,我們以行序為主序,如果該陣列的基位址是10000,且每個元素佔2個儲存單元,請問a[56 , 22]的儲存位址是 (1)

。注意是下標是從1開始的

答案:17192

解析:10000 + ((56 - 1) * 65 -1 + 22) * 2 = 17192。

牛客網練習題1

給定區間 2的31次方,2的31次方 內的3個整數a b和c,請判斷a b是否大於c。輸入第1行給出正整數t 10 是測試用例的個數。隨後給出t組測試用例,每組佔一行,順序給出a b和c。整數間以空格分隔。對每組測試用例,在一行中輸出 case x true 如果a b c,否則輸出 case x ...

關於陣列的練習題

題目描述 從鍵盤讀入學生成績,找出最高分,並輸出學生成績等級。成績 最高分 10 等級為 a 成績 最高分 20 等級為 b 成績 最高分 30 等級為 c 其餘 等級為 d public class arraydemo1 5.根據每個學生成績與最高分的差值,得到每個學生的等級,並輸出等級和成績 c...

牛客網練習題整理(3)

1 關於指標的const 用法 class a void f const a p 在vs 2017上沒有任何形式的引數傳進來 void g const a const p void k const a p int main const a p const a const p const a cons...