海康威視筆試題 用鍊錶實現乙個佇列

2021-10-24 11:49:48 字數 1311 閱讀 1358

記住佇列的特點,先進先出就好了

然後還有就是成程式設計要注意程式的乙個健壯性,一些不好的程式設計習慣可能會讓你的**等級降低許多

遇到問題:對函式的形參進行操作,導致沒有正確刪除佇列

**如下:

#include

#include

typedef

struct node

node;

//定義乙個佇列(儲存的是佇列的頭指標和尾指標)

typedef

struct queue_link

queue;

//佇列初始化函式

queue *

initqueue()

q->front = q->rear =

null

;return q;

}//從尾部入隊

intinsertqueue

(queue * q,

int data)

n->data = data;

n->next =

null

;//當前隊列為空

if(q->rear ==

null

)else

}//出隊操作,從頭部出去

intdelete_queue

(queue *q)

node * n = q->front;

//當隊列為空時

if(q->front ==

null

)//當佇列只有乙個元素時

if(q->front == q->rear)

}else

}//列印佇列

intdisplay

(queue *q)

node *n =

(node*

)malloc

(sizeof

(node));

if(n ==

null

) n = q->front;

while

(n !=

null

)printf

("\n");

free

(n);

}//判斷佇列是否為空

intisempty

(queue * q)

return q->front ==

null;}

void

func

(int

*a)int

main

(void

)while

(j--

)return0;

}

用鍊錶實現乙個棧

include include typedef int elementtype 棧元素型別 define success 0 define failure 1 定義棧結構 typedef struct stackinfo stackinfo st 函式宣告 stackinfo st createst...

python實現乙個鍊錶

class node object 創造結點類 def init self,val,next none self.val val self.next next class linklist object 鍊錶的操作 def init self self.head node none 鍊錶的開頭,創造...

用鍊錶寫的乙個佇列

以下是最近用鍊錶寫的乙個佇列,包括建立,入隊,出隊,列印等功能 filename linkqueue.c author haohaibo data 2017 4 12 brief 用鍊錶實現乙個佇列 include include include typedef int type t typedef...