面試真題 二

2021-07-27 22:17:35 字數 1322 閱讀 5159

90分鐘,20道不定項+2道程式設計。

1、給定乙個陣列,將所有的奇數放在陣列前半部分,偶數放在後半部分,奇數和奇數、偶數和偶數之間的相對位置不變。

思路:從後往前遍歷,每次找到奇數時就插入到陣列最前面,並刪除掉該數。

//劍指offer有原題,直接拿過來用了 

class solution

else count++;

n++;}}

};

2、輸入乙個四則運算表示式(包含括號),求表示式結果。

思路:這道題簡!直!坑!它的函式原型是double func(char* str, int n),傳入的是乙個c風格字串!也就是說首先你在處理時首先還得把相應字元陣列轉換成數字(還可能有小數),然後才能計算下一步結果!

講真,單獨給我乙個半小時我都寫不完這道題,深感自己能力不足,有點難過。。。

花了n久終於寫完了,主要是時隔幾天再來看**,有些不認識了。。。

主要參考的文章是這篇,將中綴表示式轉換成字尾表示式,並且由於有小數點的存在,**的處理整體複雜了許多。

#include#include#include#includeusing namespace std;

double get_number(char* &p)

if(*p=='.')

} temp=vec.size()-1;

while(right!=1)

temp=0;

while(left>=1)

return ans;

}int get_order(char* str)

}double cal(double temp1,double temp2,char c)

}double func(char *str,int n)

else if(*str==')')

sc.pop();

}else if(sc.empty()||(get_order(str)>get_order(&sc.top())))

else

sc.push(*str);

}str++;

} else

} while(!sc.empty())

sc.pop(); }

stacksd;

while(!qc.empty())

else

qc.pop(); }

return sd.top();

}int main()

{ char str="(1.2+3)*((8.3-7.3)+10/2)";

cout<

2023年iOS面試真題(二)

4月面試真題本套真題是筆者去美團面試 社招 分享的,答案由筆者及其朋友總結,如有問題請及時糾正。1.說說你對http和https的了解 1 超文字傳輸協議 http,hypertext transfer protocol 是網際網路上應用最為廣泛的一種網路協議。所有的www檔案都必須遵守這個標準。2...

Java面試真題

1.簡述抽象類和抽象方法的作用 分析 抽象類主要用來提供多個派生類可共享的基類的公共定義,他與非抽象類的主要區別如下 1 抽象類只能作為其他類的基類,不能直接例項化,對抽象類不能使用new操作符 2 抽象類中可以包含抽象成員,但非抽相類不可以 3 如果乙個非抽象類從抽象類中派生,則其必須通過覆蓋來實...

面試真題 一

開始彙總面試碰到的 題,為保密起見,不透露公司名字,但會把所有的程式設計題都記錄下來,每一篇代表一家公司,我會盡量整理得快一點。60分鐘,10道單選 5道不定項選擇 若干道填空 2道改錯 1道程式設計。1 給定乙個鍊錶,返回鍊錶逆置後的結果。思路 簡單的鍊錶逆置題,我一開始以為是逆序輸出鍊錶的值,想...