資料結構課程設計 排序與棧

2021-10-02 11:37:52 字數 3070 閱讀 4359

#include

#include

#include

#include

#define max 100

//隨機函式生成的元素個數

typedef

int keytype;

//關鍵字型別

typedef

struct

linelist;

//線性表元素型別

int count1 =

0,count2 =

0,count3 =

0,count4 =0;

//記錄比較次數與交換次數

void

bubblesort

(linelist r,

int n)

if(exchange =0)

}}printf

("此次氣泡排序比較次數為:%d\n"

,count1)

;printf

("此次氣泡排序移動次數為:%d\n"

,count2);}

void

swap

(int

*num1,

int*num2)

void

down

(linelist r,

int i,

int n)

if(r[i]

.key < r[child]

.key)

else

break;}

}void

heapsort

(linelist r,

int n)

//(2)調整大根堆

for(i = n-

1; i >

0; i--

)printf

("此次堆排序比較次數為:%d\n"

,count3)

;printf

("此次堆排序移動次數為:%d\n"

,count4);}

intmain()

printf

("本次隨機生成的%d個數字為:\n"

,max)

;for

(i =

1; i <= max; i++

)printf

("\n\n");

bubblesort

(r,max)

;printf

("\n");

heapsort

(r,max)

;}

#include

#include

#include

#include

/*結構體定義*/

typedef

struct listnode

ln;typedef ln* ll;

typedef

struct stacknode

sn,*lsp;

typedef

struct linkstack

ls;ll n;

char z[

100]

;//儲存表示式

/*判斷棧空函式*/

intisempty

(ls *s)

/*數字入棧函式*/

intpushnum

(ls *s,

float a)

/*符號入棧函式*/

intpushch

(ls *s,

char a)

/*數字出棧函式*/

int popnum (ls *s,

float

*a)/*符號出棧函式*/

int popch (ls *s,

char

*a)/*錄入變數函式*/

void

createlist

(ll *l,

int n)

l->next=

null;}

/*列印變數函式*/

void

printlist

(ll l)

printf

("\n");

}/*查詢變數對應的值函式*/

intfind

(ll l,

char ch[10]

,float

*a)}

if(flag)

return0;

*a = l-

>num;

return1;

}/*中綴轉字尾函式*/

void

midtolast

(ls *last)

else

if(d==

'+'||d==

'-')

pushch

(&p,d);}

else

if(d==

')')

popch

(&p,

&b);

}else

if(d==

'=')

flag=0;

}else

if(d>=

'0'&&d<=

'9')

k=j;

c=0;

i+=k-1

;for

(j=0

;j)pushnum

(&l,c);}

else

i+=j-1

;find

(n,ch,

&c);

pushnum

(&l,c);}

}while

(l.count!=0)

else

if(l.top-

>flag==2)

}}/*字尾轉中綴並進行計算函式*/

float

lasttomid

(ls last)

if(last.top-

>flag==2)

pushnum

(&l,c);}

}return l.top-

>data;

}int

main()

資料結構課程設計

資料結構課程設計 include define n 30 include include includeusing namespace std struct node typedef node phone,mingzi node hashnumble node hashname int hash1 ...

資料結構課程設計

小明是乙個計算機專業top student 祝賀他畢業了。並準備到銀行參加工作。上班第一天,經理叫他編制乙個實現乙個活期儲蓄處理程式,算作考查。上班第一天,一定要給領導乙個好印象,小明二話沒說,就答應了。現要你是小明了,請完成如下題目功能。儲戶開戶 銷戶 存入 支出活動頻繁,系統設計要求 1 能比較...

資料結構課程設計

一 實訓目的 通過課程設計,學會運用資料結構知識,針對具體應用,自己設計合理資料結構,確定儲存結構,並能設計具體操作演算法,選擇使用具體語言進行實現。掌握c 較複雜程式的組織和設計過程,除錯技巧。學習解決實際問題的能力。題目1.小明是乙個計算機專業top student,祝賀他畢業了。並準備到銀行參...