2021年騰訊面試題(技術崗)

小編:管理員 369閱讀 2021.06.19

第1題:


 一、不定項選擇題(共25題,每題4分,共100分,多選、少選、錯選均不得分)

1、 如果MyClass為一個類,執行”MyClass a[5], *b[6]”語言會自動調用該類構造函數的次數是()

A. 2    B.5    C. 4     D.9


第2題:


 2、下面程序的運行結果是()

#include

using namespace std;

class Base

{

int x;

public:

Base(int b):x(b) {}

virtual void display()

{

cout<<x<<endl;< p="">

}

};

class Derived:public Base

{

int y;

public:

Derived(int d):Base(d),y(d) {}

void display()

{

cout<<y<<endl;< p="">

}

};

int main()

{

Base b(2);

Derived d(3);

b.display();

d.display();

Base *p=&d;

p->display();

system("pause");

return 0;

}

 

A. 2 2 3

B.3 2 2

C. 2 3 3

D.2 3 2


第3題:


 3、在C++語言中,下面描述中,正確的是()

A. 一個基類的聲明中有純虛函數,該基類派生類一定不再是抽象類

B. 函數類型不能作為重載函數的調用的依據

C. 靜態數據成員不是所有對象所公有的

D. 內聯函數在運行時是將該函數的目標代碼插入每個調用該函數的地方


第4題:


 4、有如下程序:執行后的輸出結果應該是()

#include <iostream>

using namespace std;
class Base
{
public:
~Base()
{
cout<<"BASE";
} ;
};
class DERIVED:public BASE
{
public:
~DERIVED()

{
cout<<"DERIVED";
} ;
};
int main()
{
DERIVED x;
return 0;
}


A. BASE

B. DERIVED

C. BASEDERIVED

D. DERIVEDBASE


第5題:


 5、典型的路由選擇方式有兩種,靜態路由和動態路由。以下描述正確的是()

A. 當動態路由與靜態路由發證沖突時,以靜態路由為準

B. 當動態路由與靜態路由發證沖突時,以動態路由為準

C. 靜態路由適用于網絡規模大、網絡拓撲復雜的網絡

D. 動態路由適用于網絡規模大、網絡拓撲復雜的網絡


第6題:


 6、下列哪些屬于分布式文件系統?()

A. HBase

B. Spark

C. MapReduce

D.KFS

E. Hive


第7題:


 7、 下面程序的輸出結果是()

#include <iostream>
using namespace std;
int i=0;
int fun(int n)
{
static int a=2;
a++;
return a*n;
}
int main()
{
int k=5;
{
int i=2;
k+=fun(i);
}
k+=fun(i);
cout<<k;
return 0;
}

A. 13   B. 14   C.15   D. 16


第8題:


 8、在Java中,一下那些數據結構可以以長亮的時間復雜度0(1)添加元素()

A. HashMap B.ArrayList C. TreeMap D. LinkedList


第9題:


 9、若一棵二叉樹的前序遍歷為a, e, b, d, c,后序遍歷為b, c, d, e, a,則根節點的孩子節點為()

A. 只有e B. 有e、b C. 有e、c D. 無法確定


第10題:


 10、一面墻,單獨工作時,A花18小時砌好,B花24小時,C花30小時,現A, B, C的順序輪流砌,每人工作1小時換班,完工時,B總共干了多少小時?()

A. 8小時 B. 8小時 C.7小時 D. 6小時48分


第11題:


 11、32位機器上定義如下結構體:

struct xx
{
    long long _x1;
    char _x2;
    int _x3;
    char _x4[2];
    static int _x5;
};
int xx::_x5;

請問sizeof(xx)的大小是()

A.19 B.20 C.15 D. 24


第12題:


 12、儲蓄盒中2分和5分的硬幣的個數相等,2分和5分的錢數也相等,問:可能是多少元?()

A.2.1元 B.2.4元 C.2.8元 D. 3.0元


第13題:


 13、入棧序列是:a1,a3,a5,a2,a6出棧序列是:a5,a4,a2,a0,a3,a1,則棧的容量最小是多少()

A. 2 B.3 C. 4 D. 5


第14題:


 14、TCP報文首部信息中與關閉連接有關的是()

A.URG B.ACK C. SYN D.FIN


第15題:


 15、

int foo(int n)
{
    if (n<=1) return 1;
    return n*foo(n-1);
}

上面算法時間復雜度是()

A. 0(log2n) B. 0(n) C.0(nlog2n) D. 0(n2)


第16題:


 16、turbo c環境下,下面程序運行的結果是()

#include
int main()
{
    printf("\n");
    int a[5]= {1,2,3,4,5};
    int *p,**k;
    p=a;
    k=&p;
    printf("%d",*(p++));
    printf("%d",**k);
    return 0;
}

A.11 B.21 C.22 D. 12


第17題:


 17、現有一個包含m個節點的三叉樹,即每個節點都有三個指向孩子結點的指針,請問:在這3m個指針中有()個空指針。

A. 2m B. 2m-1 C. 2m+1 D.3m


第18題:


 18、在下面的描述中,哪些不屬于數據庫安全性的措施()

A. 普通ZIP壓縮存

B. 關聯加密存儲

C. 數據分段

D. 授權限制

E. 數據多機備份


第19題:


 19、以下哪些工具可以寫實源機器與目標機器之間的路由數量,以及各路由之間的RTT()

A. Traceroute B. Ping C. FTP D. Telnet


第20題:


 20、流量劫持是網絡安全中常見的安全威脅,下列哪些情況可能會造成流量劫持?()

A. MAC地址欺騙

B. DNS劫持

C. 偽造的DHCP服務器

D. 使用https協議


第21題:


 21、以下哪些可以工作于數據鏈路層?()

A. tcpdump B. 集線器 C.交換機 D. 路由器


第22題:


 22、LDP報頭中沒有下面那些信息?()

A.目的地址 B.窗口大小 C.序列號 D.檢驗和


第23題:


 23、以下方法那些可以讓一個元素浮動起來()

A. B.absolute C.fixed D. static


第24題:


 24、在競選條件(race condition)的情況下,兩線程執行如下代碼段,其中count為共享變量,線程1執行代碼段A,線程2指向代碼段B,那么變量count的值可能為()

int count =10;
代碼段A:
Thread_1()
{
//do something
    count++;
}
代碼段B:
Thread_2()
{
//do something
    count--;
}

A.9 B.10 C.11 D. 12


第25題:


 25、加入john看到擺鐘的時間是17:32分,請問下這時,時針跟分針的最小夾角是多少度?()

A.25度 B.26度 C.28度 D. 32度


第26題:


 二、附加題(共3題,每題20分,不計入總分)

1、請設計一個函數可以把10進制的正整數轉換為4位定長的36進制字符串。

36進制的規則為:“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”;

舉例說明:

1=“0001”

10=“000A”

20=“000K”

35=“000Z”

36=“0010”

100=“002S”

2000=“01JK”


第27題:


 2、在MMO游戲中,服務器采用Linux操作系統,網絡通信與游戲邏輯

處理進程一般是分離的。

例如:GameSvr進程處理游戲邏輯,TCPSvr進程處理網絡通信。Linux操作系統提供了很多機制可以實現GameSvr和TCPSvr進程之間的數據通信。請您列出兩種你認為最好的機制來,并為主(最好)次(次佳)描述他們實現的框架,優缺點對比和應用中的注意事項。


第28題:


 3、NSTimer會retain目標對象,可能會造成循環引用,請在NSTimer的基礎上封裝一個不retain目標對象的Timer,要求至少實現下面兩個方法,并介紹設計思路。
@interface NSTimer : NSObject

+(NSTimer *)scheduledTimerWithTimeInterval : (NSTimerInterval)ti target: (id)aTarget
selector: (SEL)aSelector userInfo: (id)userinfo repeats: (BOOL)yesOrNo;

-(void)invalidate;

//other methods…
@end


關聯標簽: