去哪兒網測試面試題
1.寫一個函數,轉換相對路徑為絕對路徑,比如:/home/abs/../temp/new/../,輸出路徑為:/home/temp。
參考代碼:
//寫一個函數,轉換相對路徑為絕對路徑,比如:/home/abs/../temp/new/../,輸出路徑為:/home/temp。
int RP2AP(const char* pInStr, char* pOutStr)
{
if (pInStr==NULL || pOutStr==NULL) return 0;
string str = pInStr;
string strTemp;
vector
string strOut=””;
int nPos1;
int nPos2;
nPos1 = (“/”, 0);
if (nPos1<0)
{
return -1;
}
while(1)
{
nPos2 = (“/”, nPos1+1);
if (nPos2>nPos1)
{
strTemp = tr(nPos1, nPos2-nPos1);
//如果不是/..,就放入vector裏
if (strTemp!=”/..”)
vec__back(strTemp);
else//彈出上一個
{
vec_rve(vec_());
vec__back();
vec_rve(vec_());
}
nPos1 = nPos2;
}
else
{
break;
}
}
//循環賦值累加
for (int i=0; i<vec_(); p="" i++)<="">
{
strOut +=vec_str[i];
}
//這裏用strOut.c_str(),要安全一些,有的環境不這樣寫編譯都不過。
memcpy(pOutStr, strOut.c_str(), ());
return 1;
}
int main()
{
int n = 10;
//char a[] = “/home/abs/../temp/new/../”;
char a[] = “/home/abs/temp/new/../”;
char b[256];
memset(b, 0, 256);
int nRet = RP2AP(a, b);
if (nRet ==1 )
cout << b << endl;
system(“pause”);
return 0;
} //寫一個函數,轉換相對路徑為絕對路徑,比如:/home/abs/../temp/new/../,輸出路徑為:/home/temp。
int RP2AP(const char* pInStr, char* pOutStr)
{
if (pInStr==NULL || pOutStr==NULL) return 0;
string str = pInStr;
string strTemp;
vector
string strOut=””;
int nPos1;
int nPos2;
nPos1 = (“/”, 0);
if (nPos1<0)
{
return -1;
}
while(1)
{
nPos2 = (“/”, nPos1+1);
if (nPos2>nPos1)
{
strTemp = tr(nPos1, nPos2-nPos1);
//如果不是/..,就放入vector裏
if (strTemp!=”/..”)
vec__back(strTemp);
else//彈出上一個
{
vec_rve(vec_());
vec__back();
vec_rve(vec_());
}
nPos1 = nPos2;
}
else
{
break;
}
}
//循環賦值累加
for (int i=0; i<vec_(); p="" i++)<="">
{
strOut +=vec_str[i];
}
//這裏用strOut.c_str(),要安全一些,有的環境不這樣寫編譯都不過。
memcpy(pOutStr, strOut.c_str(), ());
return 1;
}
int main()
{
int n = 10;
//char a[] = “/home/abs/../temp/new/../”;
char a[] = “/home/abs/temp/new/../”;
char b[256];
memset(b, 0, 256);
int nRet = RP2AP(a, b);
if (nRet ==1 )
cout << b << endl;
system(“pause”);
return 0;
}
2.一個10*10的矩陣(可以理解為棋盤),隨時生成一組數據填入矩陣,任何一個位置的數字除4進行計算,按餘數着色,餘數為0着色為red,1為blue,2為green,3為black,可以理解為生成4中顏色的棋子放入棋盤,如果存在其中同色五星連珠的情況(規則通五子棋),找出任意一組,輸出5個棋子的位置下標值。
3.
有兩個文件和,請嘗試將他們合併成為一段文字,並打印出來。
這兩個文件內容如下:
“並不是每個人都需要$(qunar)自己的糧食,$(flight.1)每個人都需要做自己穿的$(flight.2),我們説着別人發明的$(hotel),使用別人發明的數學……我們一直在$(tuan)別人的成果。使用人類的已有經驗和知識$(travel.1)來進行,是一件$(travel.2)的'事情”
flight=也不是:衣服
qunar=種植
hotel=語言
tuan=使用
travel=發明創造:很了不起
4.
一個文件裏有10萬個隨機正整數,按照以下規則能組合出一份新的數據:
A. 如果當前數字能被3整除,那麼它和文件中所有數字(包括自己)兩兩相加後生成一組數字替代自己的位置。
B. 如果不能被3整除,則它只需要乘以二,生成一個數字替代自己的位置。
例如:[3,7,6] 會組合出[6,10,9,14,9,13,12]
再如:[5,12,9,6,2]會組合出[10,17,24,21,18,14,14,21,18,15,11,11,18,15,12,8,4]
寫一個程序找出並打印出新數據的最小的前200個數字。請考慮優化算法複雜度。
5.已知字母序列【d, g, e, c, f, b, o, a】,請實現一個函數針對輸入的一組字符串 input[] = {“bed”, “dog”, “dear”, “eye”},按照字母順序排序並打印。
本例的輸出順序為:dear, dog, eye, bed。
6.有一萬個北京單身男女向你提交了基本資料,包括:姓名、性別、年齡、星座,寫一段程序嘗試找出他們最匹配的一對。
-
銷售面試介紹
銷售面試介紹1大家下午好!我是來自邕江大學金融營銷專業的。我喜歡讀書看報,因為它能豐富我的知識;我喜歡跑步,因為它可以磨礪我的意志,我到底是個什麼樣的人呢?我是一個活潑開朗、熱情、執着、有堅強意志的人。既然今天競聘的是營銷經理一職,我想談談自己對營銷的理...
-
面試的邀請函【熱】
邀請函是在舉辦某項活動前,邀請別人來參加的書面邀約。在生活中,邀請函在活動中起到的作用越來越大,我敢肯定,大部分人都對擬定邀請函很是頭疼的,下面是小編精心整理的面試的邀請函,歡迎大家分享。面試的邀請函1xxx先生/女士:您好!我公司人力資源部通過xxx收到您的簡...
-
面試的注意事項(精選15篇)
面試的注意事項1當我們在一個崗位上時間過長,已經到達瓶頸階段不太能學到東西,自身也得不到提升之後,我們可能會開始考慮是否要跳槽換一個新環境以尋求一個更好的發展平台。那麼,跳槽面試有沒有什麼特別需要注意的地方呢?下面就讓小編帶你去看看跳槽面試應該注意事...
-
應屆畢業生的面試自我評價
在平平淡淡的學習、工作、生活中,我們使用到自我評價的地方非常多,自我評價不僅影響社會中人與人的交往方式,而且影響社會中人的心理健康程度,影響人的價值觀和人生觀的合理程度。那要怎麼寫好自我評價呢?以下是小編收集整理的應屆畢業生的面試自我評價,歡迎大家借鑑...