順序性資料結構小總結

2021-06-27 09:30:31 字數 1726 閱讀 9349

第一題:

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 線性表的順序儲存結構 把線性表的結點按邏輯順序依次存放在一組位址連續的儲存單元裡。用這種方法儲存的線性表簡稱順序表。是一種隨機訪問的儲存結構。順序儲存...

資料結構 順序表總結(c )

include using namespace std define maxsize 10000 typedef int elemtype typedef struct sqlist elemtype initlist sqlist l 建立乙個空的順序表 elemtype creatlist sq...

961資料結構總結 順序表

initlist l 初始化表,構件乙個空表 length l 求表長,返回表長度,即元素個數 locateelem l,e 按值查詢元素,找值為e的元素 getelem l,i 按位查詢,找第i個位置的元素 listinsert l,i,e 插入,第i個位置插入e listdelete l,i,e...