武大計院18年夏令營筆試題目

一、高級程序設計(40’)

1、(15’)求一個數的相反數

如2581,顛倒的數爲1852,相反數爲2581+1852=4433。

#include <iostream>
#include<stdio.h>
using namespace std;
int reverse(int c){
	int rev = 0;
	for (int i = 0; c % 10 != 0; i++)
	{
		int b = c % 10;
		rev = rev * 10 + b;
		c = c / 10;
	}
	return rev;
}

void main(){
	int a;
	cin >> a;
	int rev = reverse(a);
	cout << rev+a << endl;
	system("pause");
}



 

 

2、(15’)100以內的數排序算法,要求時間複雜度爲O(n),空間複雜度爲O(1)。

3、(10’)輸出2-60內的完數和盈數

一個數的因數之和(本身除外)等於它自己則爲完數,如6=3+2+1;

一個數的因數之和(本身除外)大於它自己則爲完數,如12<6+4+3+2+1;

二、數據結構(30’)

1、(10’)有三類書籍0、1、2,存儲在順序表中,按類別進行排序,要求時間複雜度爲O(n),空間複雜度爲O(1)。給出了書籍和順序表的結構。

2、(10’)有兩個棧s1,s2,寫出隊列出和隊列進的算法。

3、(10’)深度優先算法判斷圖的連通性,給出了鄰接表結構:

typedef structAnode

{ int adjvex;     //邊的終點編號

  struct Anode*nextarc;   //指向下一條邊的指針

 }ArcNode;    //邊界點類型

typedef struct Vnode

{ Vertex data;   //頂點信息

  ArcNode*firstarc;   //指向第一條邊

}Vnode;    //鄰接表頭結點類型

typedef struct

{ }Gragh;   //圖類型

 

三、計算機網絡(30’)

1、(15’)傳輸速率爲1000kbps,傳輸時間爲0.27s,數據大小爲1kb,確認幀大小爲3bit,求信道利用率。

(1)  停止—等待協議的信道利用率;

(2)  回退N步的信道利用率;

(3)  選擇重傳的信道利用率。

2、(15’)劃分子網
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章