題目:
class aaa
;aaa* pa = 0x10000000;
問1: pa + 10= ?
問2:(char*) pa + 10 = ?
問3: (int*) pa + 10 = ?
回答:1: 0x10000000 + 10 * 16 //雙位元組對齊
2: 0x10000000 + 10
3: 0x10000000 + 10 * 4
題目二:有乙個集合,由0-1000的數字組成,要求寫下列方法insert, erase, find, size, begin, end.要求效能最好。
memcpy函式的實現。
回答:申請乙個1001位元組大小的陣列,這就,要存放的數字與陣列的下標就對應起來了,即:
1->a[1]
2->a[2]
另外,還要乙個1000位元組大小的陣列b,b[1]裡面存放值為a[1]的資料個數,b[2]裡面存放值為a[12]的資料個數……
#include
using namespace std;
const int elem_num = 1001;
int elemarr[elem_num] = ;
void insert(const int nnum)
void erase(const int nnum)
}bool find(const int nnum) //const
改為:int find (int nnum)
int begin() //const
int next(const int nnum) //const
int main()
for (int i=begin(); i!=-1; i=next(i))
cout << "/ndelete some element: /n";
i = 0;
while (i != -1)
cout << "find some element: /n";
i = 0;
while (i != -1)
system ("pause");
}
騰訊面試題
版上看到的,好東西得記下來。1.有1到10w這10w個數,去除2個並打亂次序,如何找出那兩個數。不准用位圖!關鍵 x y 1 2 3 10w a 0 a 1 a 2 a 10w 1 根據qq號做hash,整個登入時間戳。3.有乙個江洋大盜,他每次寫信都是從一張報紙上剪下單詞,再把單詞貼在信上。假如某...
騰訊面試題
題目 兩個陣列a n b n 其中a n 的各個元素值已知,現給b i 賦值,b i a 0 a 1 a 2 a n 1 a i 要求 1.不准用除法運算 2.除了迴圈計數值,a n b n 外,不准再用其他任何變數 包括區域性變數,全域性變數等 3.滿足時間複雜度o n 空間複雜度o 1 pack...
騰訊面試題
附加題 1 linux下除錯core的命令,察看堆疊狀態命令 2 寫出socks套接字 服務端 客戶端 通訊程式 3 填空補全程式,按照我的理解是添入 win32調入dll的函式名 查詢函式入口的函式名 找到函式的呼叫形式 4 有關係 s sno,sname c cno,cname sc sno,c...