問答題

【簡答題】給定n個(gè)記錄的有序序列A[n]和m個(gè)記錄的有序序列B[m],將它們歸并為一個(gè)有序序列,存放在C[m+n]中,試寫出這一算法。

答案: 采用二路歸并排序中一次歸并的思想,設(shè)三個(gè)參數(shù)i、j和k分別指向兩個(gè)待歸并的有序序列和最終有序序列的當(dāng)前記錄,初始時(shí)i、j...
題目列表

你可能感興趣的試題

問答題

【簡答題】已知(k1,k2,…,kn)是堆,試寫一算法將(k1,k2,…,kn,kn+1)調(diào)整為堆。

答案:

增加一個(gè)元素應(yīng)從葉子向根方向調(diào)整,假設(shè)調(diào)整為小根堆。

問答題

【簡答題】一個(gè)線性表中的元素為正整數(shù)或負(fù)整數(shù)。設(shè)計(jì)算法將正整數(shù)和負(fù)整數(shù)分開,使線性表的前一半為負(fù)整數(shù),后一半為正整數(shù)。不要求對(duì)這些元素排序,但要求盡量減少比較次數(shù)。

答案:

本題的基本思想是:先設(shè)置好上、下界和軸值,然后分別從線性表兩端查找正數(shù)和負(fù)數(shù),找到后進(jìn)行交換,直到上下界相遇。算法如下:

微信掃碼免費(fèi)搜題