c c 筆試面試題 7

2021-04-09 10:34:00 字數 894 閱讀 2982

我沒有記錯的話是一道msn的筆試題,網上無意中看到的,拿來做了一下。題目是這樣的,給定乙個字串,乙個這個字串的子串,將第乙個字串反轉,但保留子串的順序不變。例如:

輸入: 第乙個字串: "this is zhuxinquan's chinese site: http://www.zhuxinquan.com/cn"

子串: "zhuxinquan"

輸出: "nc/moc.zhuxinquan.www//:ptth :etis esenihc s'zhuxinquan si siht"

一般的方法是先掃瞄一邊第乙個字串,然後用stack把它反轉,同時記錄下子串出現的位置。然後再掃瞄一遍把記錄下來的子串再用stack反轉。我用的方法是用一遍掃瞄陣列的方法。掃瞄中如果發現子串,就將子串倒過來壓入堆疊。

最後再將堆疊裡的字元彈出,這樣子串又恢復了原來的順序。源**如下:

#include

#include

#include

using namespace std;

//reverse the string 's1' except the substring 'token'.

const char* reverse(const char* s1, const char* token)

if(*ptoken == '/0')//contain the token

else

}

char * return_v = new char[strlen(s1)+1];

int i=0;

while(!stack1.empty())

return_v[i]='/0';

return return_v; }

int main(int argc, char* argv)

c c 筆試面試題 3

1.以下三條輸出語句分別輸出什麼?c易 char str1 abc char str2 abc const char str3 abc const char str4 abc const char str5 abc const char str6 abc cout boolalpha str1 st...

C C 筆試 面試題目總結,

基本都沒寫答案,查詢答案的過程就是學習的過程,會的也會引起一些思考。1.extern extern c 的作用,如何判斷一段程式是由c 編譯還是由c 編譯程式編譯的?2.程序和執行緒的區別和聯絡 3.inline 的作用 4.kmp演算法 5.函式呼叫方式 cdecl 堆疊由呼叫者清除 引數從右至左...

筆試面試題

1 昨天參加一公司筆試,給幾道演算法題整懵了,其實也不難,但好久沒有碰演算法,只是有思路,要讓我在這麼短的時間內寫出程式來還是不行。2 這裡將其中一道稍微複雜一點的演算法題寫下來,以此小結。3 4 題目描述 5 將n個雞蛋放入到m個籃子中去 n m 保證每個籃子中至少乙個雞蛋,然後指定乙個數x,要求...