第一題:
problem a: 崗位實踐2——順序表的插入
順序表是採用陣列儲存資料的一種線性資料結構。實現順序表的插入操作,即給出指定位置和資料,把該位置和後面的資料往後移動1位,然後再插入資料。假定順序表的位置從1開始計算。
#include
using namespace std;
#define l 50
class list;
charored[12]=;
int main()
//freopen("cin.txt","r",stdin);
int t;
char temp[20];
cin>>t;
while(t--)
int size,i;
char ele;
cin>>temp;
size=strlen(temp);
for(i=0;ia.push(temp[i]);
for(i=0;iele=a.top();
ele=trans(ele);
b.push(ele);
a.pop();
for(i=0;iele=b.top();
ele=trans(ele);
b.pop();
coutchar trans(char a)
char b;
int i;
for(i=0;i<12;i++)
if(a==ora[i])
b=ored[i];
return b;
第四題:
problem d: 崗位實踐2——佇列應用之程式排程
在作業系統中往往需要對各種程式進行排程,一般根據任務優先順序會分成幾個任務佇列,當優先順序高的佇列完成後才排程低優先順序佇列。當前設定有a b c三個任務佇列,優先a高於b且b高於c。當前給出乙個任務集合,請進行任務分類
#include
using namespace std;
#include
int main()
//freopen("cin.txt","r",stdin);
int n,time[20],i;//i用於下標計數
cin>>n;
char client[20];
queueclient_kinds[3];
for(i=0;icin>>client[i];
for(i=0;icin>>time[i];
if(client[i]=='a')
client_kinds[0].push(time[i]);
else if(client[i]=='b')
client_kinds[1].push(time[i]);
else if(client[i]=='c')
client_kinds[2].push(time[i]);
int sum[3]=,t[3]=;
for(i=0;i<3;i++)
while(!client_kinds[i].empty())
sum[i]=client_kinds[i].front()+sum[i];
client_kinds[i].pop();
t[i]++;
for(i=0;icout<<"a ";
for(i=0;icout<<"b ";
for(i=0;icout<<"c ";
cout 線性表是一種典型的線性結構。頭結點無前驅有乙個後繼,尾節點無後繼有乙個前驅。鍊錶只能順序查詢,定位乙個元素的時間為o n 刪除乙個元素的時間為o 1 線性表的順序儲存結構 把線性表的結點按邏輯順序依次存放在一組位址連續的儲存單元裡。用這種方法儲存的線性表簡稱順序表。是一種隨機訪問的儲存結構。順序儲存... include using namespace std define maxsize 10000 typedef int elemtype typedef struct sqlist elemtype initlist sqlist l 建立乙個空的順序表 elemtype creatlist sq... initlist l 初始化表,構件乙個空表 length l 求表長,返回表長度,即元素個數 locateelem l,e 按值查詢元素,找值為e的元素 getelem l,i 按位查詢,找第i個位置的元素 listinsert l,i,e 插入,第i個位置插入e listdelete l,i,e...資料結構小總結
資料結構 順序表總結(c )
961資料結構總結 順序表