Linux開發實習生專項面試題(含答案)
時間:2016-04-14 來源:未知
1、單循環鏈表的主要優點是()。
A.從表中任一結點出發都能掃描到整個鏈表
B.不再需要頭指針了
C.在進行插入、刪除操作時,能更好地保證鏈表不斷開
D.已知某個結點的位置后,能夠容易找到它的直接前趨
參考答案:A
2、函數func的定義如下:
void func(const int& v1, cont int& v2)
{
std::cout << v1 << ' ';
std::cout << v2 << ' ';
}
在Visual Studio開發環境下, 以下代碼輸出結果為
int main (int argc, char* argv[])
{
int i=0;
func(++i,i++);
return 0;
}
A.0 1
B.1 2
C.2 1
D.2 0
參考答案:D
3、遞歸式的先序遍歷一個n節點,深度為d的二叉樹,需要棧空間的大小為______。
A.O(n)
B.O(d)
C.O(logn)
D.O(nlogn)
參考答案:B
4、以下代碼編譯有錯誤,哪個選項能解決編譯錯誤?
class A {
public:
int GetValue() const {
vv = 1;
return vv;
}
private:
int vv;
};
A.改變成員變量"vv"為"mutable int vv"
B.改變成員函數"GetValue"的聲明,以使其不是const的
C.都不能修復編譯錯誤
D.都可以修復編譯錯誤
參考答案:D
5、以下排序算法中是穩定的且時間復雜度小的是:
A.bubble sort
B.heap sort
C.merge sort
D.quick sort
參考答案:C
6、下列哪兩個數據結構,同時具有較高的查找和刪除性能
A.有序數組
B.有序鏈表
C.AVL樹
D.Hash表
參考答案:CD
7、以下程序輸出結果是
class A
{
public:
virtual void func(int val = 1)
{ std::cout<<"A->"<
virtual void test()
{ func();}
};
class B : public A
{
public:
void func(int val=0)
{std::cout<<"B->"<
};
int main(int argc ,char* argv[])
{
B*p = new B;
p->test();
return 0;
}
A.A->0
B.B->1
C.A->1
D.B->0
參考答案:B
8、下列與隊列結構有關聯的是
A.先到先服務的作業調度
B.數組元素的引用
C.多重循環的執行
D.函數的遞歸調用
參考答案:A
9、在嵌套使用if語句時,C語言規定else總是____
A.和之前與其具有相同縮進位置的if配對
B.和之前與其近的if配對
C.和之前與其近的且不帶else的if配對
D.和之前的第一個if配對
參考答案:C

