「待字閨中」面試題之 最新版本

2021-06-18 16:47:19 字數 1509 閱讀 4744

題目:

給定軟體的版本號的表達方式,以及一些版本號,請找出最新的版本。例如:

1. 1.2, 2,2 最新的是2.2

2. 3.1, 3.1.3 最新的是3.1.3

上面的版本號,都是用字串表示的。

解答:基於兩兩比較的方法。

寫乙個函式,bool comparevesion(char* string1, char* string2).

錯誤之處在於:

1. 沒有考慮輸入字元有錯誤的情況

2. 沒有考慮版本號有多個字元構成數字的情況,如12.34.4

3. 把&寫成了and

直接寫:

#include "iostream"

using namespace std;

int compareversion(char* version1, char* version2)

if(strcmp(version1, version2)==0)

return 0;

int length1 = strlen(version1);

int length2 = strlen(version2);

int tmp = 0;

while(tmp

if(tmp==length1)

return -1;

else

return 1;

void main()

char* ver1 = new char[256];

char* ver2 = new char[256];

cin>>ver1;

cout<<"version1= ">ver2;

cout<<"version2= "<

int result = compareversion(ver1, ver2);

if(result == 0)

cout<<"the same"cout<<"ver1>ver2"cout<<"ver1

修改後:

#include "iostream"

using namespace std;

int compareversion(char* version1, char* version2)

if (index1 != length1 && version1[index1]!='.')

else

while(index2 < length2 && version2[index2] >= '0' && version2[index2] <='9')

if(index2 != length1 && version2[index2]!='.')

else

if(tmp1>tmp2)

return 1;

else if(tmp1return -1;

else

continue;

}if(index1==length1)

return -1;

else

return 1;

}void main()

cimoc 最新版 Cimoc最新版本

cimoc最新版本擁有超豐富的熱門漫畫資源,讓你在每乙個無聊的時間裡都可以自由閱讀好看的漫畫,每一本漫畫都擁有自己的標籤,讓使用者們可以通過這些標籤找到更多相似型別的漫畫,並且所有漫畫資源都可以讓你免費暢讀,看到好看的漫畫不要猶豫,直接點進去就能 cimoc最新版本 軟體特色 1.中漫 日漫 韓漫,...

mysql 最新版本 mysql最新版本是多少

mysql 8.0 正式版 8.0.11 已發布,官方表示 mysql 8 要比 mysql 5.7 快 2 倍,還帶來了大量的改進和更快的效能!注意 從 mysql 5.7 公升級到 mysql 8.0 僅支援通過使用 in place 方式進行公升級,並且不支援從 mysql 8.0 降級到 m...

Opera next最新版本

opera next採用了chromium開源專案成果,以下從幾個大的方面比較和chrome的異同 opera 15.0.1147.61 相當於chrome 28.0.1500.45 安裝後的檔案目錄結構和chrome類似 安裝後檔案大小與chrome也差不多 多程序架構也是chrome幾乎一樣 甚...