資料結構與演算法 -PTA選擇判斷複習題(持續更新中)
第一章——褚論
第二章——線性表
- (neuDS)資料的物理結構是指資料在計算機中的實際儲存形式。
T
- (neuDS)資料的物理結構是指資料在計算機中的實際儲存形式。
F
- 2N 和NN 具有相同的增長速度。
F
- 演算法分析的兩個主要方面是時間複雜度和空間複雜度的分析。
T
- 資料的邏輯結構說明資料元素之間的順序關係,它依賴於計算機的儲存結構。
F 邏輯結構可用不同的儲存結構實現,此處要區分邏輯結構與物理結構的區別。
- 演算法必須有輸出,但可以沒有輸入。
T
- 演算法獨立於具體的程式設計語言,與具體的計算機無關。
T
- 用漸進表示法分析演算法複雜度的增長趨勢。
T
- O(n2 ),O(1+2+···+n) 對應的演算法時間複雜度相同。
T
- 資料的邏輯結構與資料元素本身的內容和形式無關。
T
- 資料項是資料的最小單位。
T
- 資料的邏輯結構是指資料的各資料項之間的邏輯關係。
F 邏輯結構就是資料元素間的邏輯關係,而不是資料元素內部的資料項之間的關係。
- 資料結構概念包括資料之間的邏輯結構、資料在計算機中的儲存方式和資料的運算三個方面。
T
- 資料結構的抽象操作的定義與具體實現有關。
F抽象本來就是不考慮具體的實現細節,只是對事物的本質和特徵的描述。
- logN2 is O(N).
T
- n0.01 is O(logn).
F
- 以下關於資料結構的說法中正確的是____。
A資料結構的邏輯結構獨立於其儲存結構
B資料結構的儲存結構獨立於該資料結構的邏輯結構
C資料結構的邏輯結構唯一地決定了該資料結構的儲存結構
D資料結構僅由其邏輯結構和儲存結構決定
- 給定程式時間複雜度的遞推公式:T(1)=1,T(N)=2T(N/2)+N。則程式時間複雜度是:
O(logN)
O(N)
O(NlogN)
O(N2)
- 下列函式中,哪個函式具有最慢的增長速度:
N1.5
NlogN2
N2logN
N(logN)2
- 執行下面程式段時,執行S語句的頻度為()。
for(int i=0;i<n;i++)
for(int j=1;j<=i;j++)
S;
n2
n2 /2
n(n+1)
n(n+1)/2
這道題的標準答案應該是1+2+3+……+n-1=n(n-1)/2。
但實際考試做題選擇最接近的即可。
- 在儲存資料時,通常不僅要儲存各資料元素的值,而且還要儲存()。
資料的處理方法
資料元素的型別
資料元素之間的關係
資料的儲存方法
- 某演算法的時間複雜度是O(n2 ),表明該演算法的( )。
問題規模是n2
問題規模與n2成正比
執行時間等於n2
執行時間與n2成正比
- 資料在計算機記憶體中的表示是指() 。
資料的儲存結構
資料結構
資料的邏輯結構
資料元素之間的關係
- 設計一個好的演算法應該滿足正確性、可讀性、健壯性和高效性等要求。
- 下面程式碼段的時間複雜度是()。
x=0;
for( i=1; i<n; i++ )
for ( j=1; j<=n-i; j++ )
x++;
O(n)
O(n2)
O(n3)
O(2n)
所以時間複雜度是O(n2)。
- 下列程式碼
if ( A > B ) {
for ( i=0; i<N*N/100; i++ )
for ( j=N*N; j>i; j-- )
A += B;
}
else {
for ( i=0; i<N*2; i++ )
for ( j=N*3; j>i; j-- )
A += B;
}
的時間複雜度是:O(N4)
if語句的時間複雜度是O(N4),else語句中的時間複雜度是O(N2),這裡一定要注意是N2,N3,而不是二次方三次方。
- 測量演算法的執行時間
下面的程式測量某個函式 F 的執行時間。
請在空白處填寫適當內容,完成該程式。
#include <stdio.h>
#include <
time.h
>
int F(int x);
int main()
{
clock_t t1, t2;
double t;
int x, y;
printf("x = ? ");
scanf("%d", &x);
t1 =
clock()
;
y = F(x);
t2 =
clock()
;
t =
(t2 - t1) / (double)CLOCKS_PER_SEC
;
printf("y = %d\n", y);
printf("It took %.2f second(s)\n", t);
return 0;
}
int F(int x)
{
......
}
執行效果示例
x = ? 25
y = 3712
It took 1.25 second(s)
注:圖中資料僅為樣例,實際結果可能不同。
相關文章
- 資料結構與演算法彙總(持續更新中)資料結構演算法
- 福大pta--C語言--選擇結構程式設計--判斷題C語言程式設計
- PTA 程式設計 判斷題-期末複習程式設計
- 前端需要知道的資料結構與演算法(持續更新中...)前端資料結構演算法
- 複習資料結構:排序(三)——選擇排序資料結構排序
- javaScript 習題總結(持續更新)JavaScript
- PHP面試題總結-持續更新中PHP面試題
- 鴻蒙OS學習資料整理,持續更新中鴻蒙
- 資料結構——迴圈佇列PTA習題資料結構佇列
- 演算法與資料結構——選擇排序(c++)演算法資料結構排序C++
- 資料結構與演算法——排序演算法-選擇排序資料結構演算法排序
- 福大pta--C語言--基本資料型別與表示式--判斷題C語言資料型別
- [課程複習] 資料結構之經典題目回顧 (一)選擇題、填空題1資料結構
- 前端面試題總結——HTML(持續更新中)前端面試題HTML
- 前端面試題總結——綜合問題(持續更新中)前端面試題
- 資料分析面試|SQL真題持續更新面試SQL
- 資料結構與演算法學習-複雜度分析資料結構演算法複雜度
- 資料結構&演算法實踐—選擇排序資料結構演算法排序
- 【前端面試】Vue面試題總結(持續更新中)前端Vue面試題
- Spring面試題(持續更新中)Spring面試題
- 資料結構專題頁(更新中...)資料結構
- 【資料結構】選擇排序!!!資料結構排序
- 資料結構的選擇資料結構
- 【資料結構】選擇排序資料結構排序
- 演算法複習 - AcWing - 資料結構演算法資料結構
- PHP學習路線資源總結[持續更新]PHP
- Kotlin學習資料彙總(持續更新...)Kotlin
- 資料 結構客觀題複習題集
- javascript演算法彙總(持續更新中)JavaScript演算法
- 前端面試題總結——Html5(持續更新中)前端面試題HTML
- 資料結構與演算法常見問題(面試題)不定時更新資料結構演算法面試題
- Android 技術選型(持續更新中...)Android
- 在 JavaScript 中學習資料結構與演算法JavaScript資料結構演算法
- 演算法與資料結構系列 ( 三 ) - 選擇排序法- Select Sort演算法資料結構排序
- 前端演算法類面試總結(持續更新...)前端演算法面試
- 資料結構32:選擇排序資料結構排序
- 作業系統(考研,面試,期末複習)- 持續更新作業系統面試
- 選擇結構程式設計之習題程式設計