近期,有一位同學(xué)咨詢過我們的老師關(guān)于計(jì)算機(jī)PTA上的編程習(xí)題的相關(guān)資訊,考慮到可能并不是只有這一位同學(xué)會遇到這種情況,本次笑死就針對計(jì)算機(jī)PTA上的編程習(xí)題的部分,來與同學(xué)們分享一下相關(guān)的經(jīng)驗(yàn)。
首先PTA是什么?
計(jì)算機(jī)程序設(shè)計(jì)能力考試(Programming Ability Test,簡稱PAT)旨在通過統(tǒng)一組織的在線考試及自動評測方法客觀地評判考生的算法設(shè)計(jì)與程序設(shè)計(jì)實(shí)現(xiàn)能力,科學(xué)的評價計(jì)算機(jī)程序設(shè)計(jì)人才,為企業(yè)選拔人才提供參考標(biāo)準(zhǔn)。
計(jì)算機(jī)PTA考試的主題包括:數(shù)據(jù)結(jié)構(gòu)、外殼程序編程問題、avl 樹根、旅游規(guī)劃、霍夫曼代碼、安卓多進(jìn)程編程、數(shù)據(jù)結(jié)構(gòu)/ PTA-PTA排名摘要/結(jié)構(gòu)等,針對計(jì)算機(jī)PTA上的編程習(xí)題講解,考而思的老師還是很了解的,我們以數(shù)據(jù)結(jié)構(gòu)為例:

第一個問題:二進(jìn)制搜索:
Position BinarySearch(List L, ElementType X)
{
// Array size
// int N = sizeof(L->Data) / sizeof(*L->Data);
int start = 1;
int end = L->Last;
int mid;
while (start <= end)
{
mid = (start + end) / 2;
if (L->Data[mid] > X)
end = mid - 1;
else if (L->Data[mid] < X)
start = mid + 1;
else
return mid;
}
return NotFound;
}
第二個問題:最大的子序列和:
方法 1:
#include
#include
int Sum(int A[], int N)
{
int maxSum, thisSum;
maxSum = thisSum = 0;
for (int i = 0; i < N; i++)
{
thisSum = 0;
for (int j = i; j < N; j++)
{
for (int k = i; k <= j; k++)
thisSum += A[k];
if (thisSum > maxSum)
maxSum = thisSum;
}
}
return maxSum;
}
int main(void)
{
int* a = NULL;
int N;
scanf("%d", &N);
a = (int*)malloc(N * sizeof(int));
for (int i = 0; i < N; i++)
{
scanf("%d", &a[i]);
}
printf("%d\n", Sum(a, N));
}
方法二:
#include
#include
int Sum(int A[], int N)
{
int maxSum, thisSum;
maxSum = thisSum = 0;
for (int i = 0; i < N; i++)
{
thisSum += A[i];
if (thisSum > maxSum)
{
maxSum = thisSum;
}
else if (thisSum < 0)
{
thisSum = 0;
}
}
return maxSum;
}
int main(void)
{
int* a = NULL;
int N;
scanf("%d", &N);
a = (int*)malloc(N * sizeof(int));
for (int i = 0; i < N; i++)
{
scanf("%d", &a[i]);
}
printf("%d\n", Sum(a, N));
}
上述就是計(jì)算機(jī)PTA上的編程習(xí)題講解中數(shù)據(jù)結(jié)構(gòu)部分的兩道經(jīng)典例題了,由于條件限制,我們并不能將所有習(xí)題一一列舉,若是同學(xué)們需要了解計(jì)算機(jī)PTA上的編程習(xí)題或者考試的更多相關(guān)資訊以及需要專業(yè)老師來給出幫助的話,也可以與考而思的在線老師取得聯(lián)系,從而獲取幫助哦。
圖片歸版權(quán)方所有,頁面圖片僅供展示。如有侵權(quán),請聯(lián)系我們刪除。凡來源標(biāo)注“考而思”均為考而思原創(chuàng)文章,版權(quán)均屬考而思教育所以,任何媒體、網(wǎng)站或個人不得轉(zhuǎn)載,否則追究法律責(zé)任。
添加微信【kaoersi03】(備注官網(wǎng))申請?jiān)嚶?,享專屬套餐?yōu)惠!
kaoersi03