計算機考研複試真題 字串排序

2022-06-27 20:48:11 字數 1100 閱讀 4852

編寫乙個程式,將輸入字串中的字元按如下規則排序(乙個測試用例可能包含多組資料,請注意處理)。

規則 1 :英文本母從 a 到 z 排列,不區分大小寫。

如,輸入: type 輸出: epty

規則 2 :同乙個英文本母的大小寫同時存在時,按照輸入順序排列。

如,輸入: baba 輸出: aabb

規則 3 :非英文本母的其它字元保持原來的位置。

如,輸入: by?e 輸出: be?y

樣例:輸入:

a famous saying: much ado about nothing(2012/8).

輸出:a aaaabc dfgghh : iimm nnn oooos sttuuuy (2012/8).

示例1

a famous saying: much ado about nothing (2012/8).

a aaaabc dfgghh: iimm nnn oooos sttuuuy (2012/8).

/*

解題思路:常見考法,將每個元素包含兩個資訊。可以將每個字元設定乙個字元位和乙個標誌位,將輸入的字串訪問到向量中,

存的過程中如果字元是字母則字元位不填充,留著輸出時填充,並置標誌位為0;如果字元不是字母則字元位填充,並置標誌位為1。

排序是用2個for迴圈,外層for迴圈按字母順序排序,內層for迴圈按輸出順序排序。再向結果向量中填充時,若標誌位為1則不填充,

下標直接往後移。若標誌位為0則填充,然後下標往後移。最後輸出即可。

*/#include

#include

#include

using

namespace

std;

class node;

intmain()

}int index=0

;

for(int i='

a';i<='

z';++i)

for(int j=0;jj)

}for(int i=0;ii)

cout

<}

return0;

}

計算機考研複試真題 階乘

輸入n,求y1 1 3 m m是小於等於n的最大奇數 y2 2 4 p p是小於等於n的最大偶數 每組輸入包括1個整數 n可能有多組測試資料,對於每組資料,輸出題目要求的y1和y2示例1 4 7 26 解題思路 1.寫乙個求某一數字m的階乘函式。2.對於輸入的n進行最大奇數和偶數的確定,確定方法 若...

計算機考研複試真題 大整數排序

對n個長度最長可達到1000的數進行排序。輸入第一行為乙個整數n,1 n 100 接下來的n行每行有乙個數,數的長度範圍為1 len 1000。每個數都是乙個正數,並且保證不包含字首零。可能有多組測試資料,對於每組資料,將給出的n個數從小到大進行排序,輸出排序後的結果,每個數占一行。示例1 3 11...

計算機考研複試真題 手機鍵盤

按照手機鍵盤輸入字母的方式,計算所花費的時間 如 a,b,c都在 1 鍵上,輸入a只需要按一次,輸入c需要連續按三次。如果連續兩個字元不在同乙個按鍵上,則可直接按,如 ad需要按兩下,kz需要按6下 如果連續兩字元在同乙個按鍵上,則兩個按鍵之間需要等一段時間,如ac,在按了a之後,需要等一會兒才能按...