鏈式佇列(c),插入排序僅供參考

2021-06-29 12:36:08 字數 1634 閱讀 2296

/    .c///

#define _crt_secure_no_warnings

#include

#include

#include

#include "stacknode.h"

#define n  100

typedef char datatype;

//佇列問題

//struct queue

//;queue *initqueue(queue * sq)

//int isempyty(queue *sq);

//datatype gethead(queue *sq);

queue *enqueue(queue *sq, int num, int high)//入隊

else

//從而確定要插入的位置!

p->pnext = newnode;

sort(sq);

return sq;}}

queue *dequeue(queue *sq, queue *pout)//出兌,也可能改變頭結點,需要返回queue指標

else

return sq;

}queue* freeall(queue *sq)//清空

else

free(sq);

sq = null;

}return null;

}void sort(queue *sq)//氣泡排序

for (queue *p1 = sq; p1->pnext != null;p1 = p1->pnext)}}

}queue *insertqueue(queue *sq, int num, int high)//佇列插入

else

else

//p迴圈到尾部,尾部插入

if (temp->high <= p->high)

else

p1 = p1->pnext;

}return sq;}}

}}void printfall(queue *sq)

else

}void main()

system("pause");

}.h           //

#define n  100

typedef char datatype;

//佇列問題

struct queue

;typedef struct queue queue;

queue *initqueue(queue * sq);

//int isempyty(queue *sq);

//datatype gethead(queue *sq);

queue *enqueue(queue *sq, int num,int high);//入隊

queue *dequeue(queue *sq,queue *pout);//出兌,也可能改變頭結點,需要返回queue指標

queue* freeall(queue *sq);//清空

void sort(queue *sq);//排序

queue *insertqueue(queue *sq, int num, int high);//佇列插入

void printfall(queue *sq);

PHP 實現佇列類 僅供參考

實際開發中需要用到 php 類似佇列的功能 於是乎 寫了下面的類 寫的比較倉卒 有bug 歡迎email 我,學習交流僅供參考。php class for queue author yangqijun live.cn class queue desc start queue param string...

排序有哪幾種好方法(僅供參考)

排序小結 排序演算法是一種基本並且常用的演算法。由於實際工作中處理的數量巨大,所以排序演算法 對演算法本身的速度要求很高。而一般我們所謂的演算法的效能主要是指演算法的複雜度,一般用o方法來表示。在後面我將 給出詳細的說明。對於排序的演算法我想先做一點簡單的介紹,也是給這篇文章理乙個提綱。我將按照演算...

插入排序C

變數 i 1.代表待插入數字的下標 preindex.代表前乙個元素的下標 length.代表陣列的長度 排序過程 arr 0 跳過,從arr 1 開始,每乙個數都和它前面的數字比較。while iarr i 那麼前大後小,亂序 arr preindex 1 current i include us...