数据结构与算法——编程实践

数据结构与算法课程团队,全力打造


3.1 队列的操作C(5段代码)

<h1>队列的结构体</h1> <pre><code class="language-c">#include&amp;lt;stdio.h&amp;gt; #include&amp;lt;stdlib.h&amp;gt; #define MaxSize 100 typedef struct{     int data[MaxSize];     int font;     int rear; }queue;</code></pre> <h1>队列初始化</h1> <pre><code class="language-c">queue* init(){     queue* q = (queue*)malloc(sizeof(queue));     q-&amp;gt;font = -1;     q-&amp;gt;rear = -1;     return q; }</code></pre> <h1>入队</h1> <pre><code class="language-c">int enQueue(queue* q, int t){     if(q-&amp;gt;font==(q-&amp;gt;rear+1)%MaxSize)         return 0;     q-&amp;gt;rear = (q-&amp;gt;rear+1)%MaxSize;     q-&amp;gt;data[q-&amp;gt;rear] = t;     return 1; }</code></pre> <h1>获取队列长度</h1> <pre><code class="language-c">int length(queue* q){     return (q-&amp;gt;rear+MaxSize - q-&amp;gt;font) % MaxSize; }</code></pre> <h1>出队</h1> <pre><code class="language-c">int deQueue(queue* q){     if(length(q) == 0)         return 0;     q-&amp;gt;font = (q-&amp;gt;font+1)%MaxSize;     int t = q-&amp;gt;data[q-&amp;gt;font];     return t; }</code></pre>

页面列表

ITEM_HTML