當前位置:高考升學網(wǎng) > 招聘筆試題 > 正文
3. Internet物理地址和IP地址轉換采用什么協(xié)議?
答案:地址解析協(xié)議ARP address resolution protocol
4. IP地址的編碼分為哪倆部分?
答案:網(wǎng)絡號和主機號。不過是要和“子網(wǎng)掩碼”按位與上之后才能區(qū)分哪些是網(wǎng)絡位
哪些是主機位。
10 二分查找是 順序存儲 鏈存儲 按value有序中的哪些
大題:
1 把字符串轉換為小寫,不成功返回NULL,成功返回新串
char toLower(char sSrcStr)
{
char sDest= NULL;
if( __1___)
{
int j;
sLen = strlen(sSrcStr);
sDest = new [_______2_____];
if(sDest == NULL)
return NULL;
sDest[sLen] = ‘\0′;
while(_____3____)
sDest[sLen] = toLowerChar(sSrcStr[sLen]);
}
return sDest;
}
2 把字符串轉換為整數(shù) 例如:”-123″ -> -123
main()
{
…..
if( string == ‘-’ )
n = ____1______;
else
n = num(string);
…..
}
int num(char string)
{
for(;!(string==0);string++)
{
int k;
k = __2_____;
j = –sLen;
while( __3__)
k = k 10;
num = num + k;
}
return num;
}
附加題:
1 linux下調(diào)試core的命令,察看堆棧狀態(tài)命令
2 寫出socks套接字 服務端 客戶端 通訊程序
3 填空補全程序,按照我的理解是添入:win32調(diào)入dll的函數(shù)名
查找函數(shù)入口的函數(shù)名 找到函數(shù)的調(diào)用形式
把formView加到singledoc的聲明 將singledoc加到app的聲明
#define Max(a,b) ( a/b)?a:b
寫一個病毒
while (1)
{
int p = new int[10000000];
}
不使用額外空間,將 A,B兩鏈表的元素交叉歸并
將樹序列化 轉存在數(shù)組或 鏈表中
struct st{
int i;
short s;
char c;
};
sizeof(struct st);
答案:8
char p1;
void p2;
int p3;
char p4[10];
sizeof(p1…p4) =?
答案:4,4,4,10
二分查找
快速排序
雙向鏈表的刪除結點
有12個小球,外形相同,其中一個小球的質量與其他11個不同
給一個天平,問如何用3次把這個小球找出來
并且求出這個小球是比其他的輕還是重
解答:
哈哈,據(jù)說這是微軟前幾年的一個面試題。很經(jīng)典滴啊!三次一定能求出來,而且能確定是重還是輕。
數(shù)據(jù)結構的知識還沒怎么學透,不過這個題我到是自己研究過,可以分析下。
將12個球分別編號為a1,a2,a3…….a10,a11,a12.
第一步:將12球分開3撥,每撥4個,a1~a4第一撥,記為b1, a5~a6第2撥,記為b2,其余第3撥,記為b3;
第二步:將b1和b2放到天平兩盤上,記左盤為c1,右為c2;這時候分兩中情況:
1.c1和c2平衡,此時可以確定從a1到a8都是常球;然后把c2拿空,并從c1上拿下a4,從a9到a12四球里隨便取三球,假設為a9到a11,放到c2上。此時c1上是a1到a3,c2上是a9到a11。從這里又分三種情況:
A:天平平衡,很簡單,說明沒有放上去的a12就是異球,而到此步一共稱了兩次,所以將a12隨便跟11個常球再稱一次,也就是第三次,馬上就可以確定a12是重還是輕;
B:若c1上升,則這次稱說明異球為a9到a11三球中的一個,而且是比常球重。取下c1所有的球,并將a8放到c1上,將a9取下,比較a8和a11(第三次稱),如果平衡則說明從c2上取下的a9是偏重異球,如果不平衡,則偏向哪盤則哪盤里放的就是偏重異球;
C:若c1下降,說明a9到a11里有一個是偏輕異球。次種情況和B類似,所以接下來的步驟照搬B就是;
2.c1和c2不平衡,這時候又分兩種情況,c1上升和c1下降,但是不管哪種情況都能說明a9到a12是常球。這步是解題的關鍵。也是這個題最妙的地方。
A:c1上升,此時不能判斷異球在哪盤也不能判斷是輕還是重。取下c1中的a2到a4三球放一邊,將c2中的a5和a6放到c1上,然后將常球a9放到c2上。至此,c1上是a1,a5和a6,c2上是a7,a8和a9。此時又分三中情況:
1)如果平衡,說明天平上所有的球都是常球,異球在從c1上取下a2到a4中。而且可以斷定異球輕重。因為a5到a8都是常球,而第2次稱的時候c1是上升的,所以a2到a4里必然有一個輕球。那么第三次稱就用來從a2到a4中找到輕球。這很簡單,隨便拿兩球放到c1和c2,平衡則剩余的為要找球,不平衡則哪邊低則哪個為要找球;
2)c1仍然保持上升,則說明要么a1是要找的輕球,要么a7和a8兩球中有一個是重球(這步懂吧?好好想想,很簡單的。因為a9是常球,而取下的a2到a4肯定也是常球,還可以推出換盤放置的a5和a6也是常球。所以要么a1輕,要么a7或a8重)。至此,還剩一次稱的機會。只需把a7和a8放上兩盤,平衡則說明a1是要找的偏輕異球,如果不平衡,則哪邊高說明哪個是偏重異球;
3)如果換球稱第2次后天平平衡打破,并且c1降低了,這說明異球肯定在換過來的a5和a6兩求中,并且異球偏重,否則天平要么平衡要么保持c1上升。確定要找球是偏重之后,將a5和a6放到兩盤上稱第3次根據(jù)哪邊高可以判定a5和a6哪個是重球;
B:第1次稱后c1是下降的,此時可以將c1看成c2,其實以后的步驟都同A,所以就不必要再重復敘述了。至此,不管情況如何,用且只用三次就能稱出12個外觀手感一模一樣的小球中有質量不同于其他11球的偏常的球。而且在稱的過程中可以判定其是偏輕還是偏重。
給一個奇數(shù)階N幻方,填入數(shù)字1,2,3…NN,使得橫豎斜方向上的和都相同
答案:
#include
#include
#include
usingnamespace std;
int main()
{
int n;
cin>>n;
int i;
int Matr=newint[n];//動態(tài)分配二維數(shù)組
for(i=0;i
Matr[ i ]=newint[n];//動態(tài)分配二維數(shù)組
//j=n/2代表首行中間數(shù)作為起點,即1所在位置
int j=n/2,num=1;//初始值
i=0;
while(num!=nn+1)
{
//往右上角延升,若超出則用%轉移到左下角
Matr[(i%n+n)%n][(j%n+n)%n]=num;
//斜行的長度和n是相等的,超出則轉至下一斜行
if(num%n==0)
i++;
else
{
i–;
j++;
}
num++;
}
for(i=0;i
{
for(j=0;j
cout<
cout<
}
for(i=0;i
delete [ ]Matr[ i ];
return1;
2020年河北新聞網(wǎng)兩學一做
時間:2023-09-18 07:0:242020年河北新聞網(wǎng)兩學一做
時間:2023-09-15 11:0:59兩學一做學習教育知
時間:2023-09-21 06:0:302020年開展兩學一做學習教
時間:2023-09-19 21:0:30