序文
結局、アルゴリズムの魂は、年間の練習の外にプログラムされている何かのデータ構造とアルゴリズム側面の最近の研究では、彼は技術が私は基礎がプロジェクトをロールアップし始めた敷設のようなものだっただろうではないか、まだ非常に限られているにも感じました野生プログラマ、インフラが貧弱であるため、それほど頻繁に小さな問題の様々な困惑し、これを見て戻っても、私たちが実際に最終的な分析や、自分の気になる方には、ピット段付きなので、私はいくつかの基本的なを学び始めていますいくつかの基礎をやった後、学業を続けるために学校に戻るために。この記事を参照のコードは、プレーン算術帳エントリに構成されている「なるほど、アルゴリズム」
1つのキュー
1.1キューとは何ですか
キューは、特別な直線状であることを特別な挿入の後端は、テーブル(後方)が、それが唯一のテーブル(フロント)の前端部に欠失を可能にする、キューが制限された直線状を操作しています。末端のテールエンドと呼ばれる動作はヘッドの挿入操作と呼ぶことにする削除します。(Baiduの百科事典より抜粋)
人気の用語は、キューは、我々は、ラインアップを何度もラインアップとして、私たちは場面に遭遇します(たとえば、チケットなどを、食堂Dafan、セキュリティ、お茶漢を購入)は、このシナリオでは、チームの最前線は、我々はそれを呼び出すことができます最初のチームのために、チームの最後の最後には、チームが最初のビジネスのために適用が終了したら、尾を呼び出すことができます(肉漢のフルスプーンを再生するには、食堂の叔母をチケットを購入)、チームから我々が呼ぶプロセス残すアウトチームは、もちろん、あなたがキューを入力したいデータ外のキューは、それが尾後ろからでなければなりません(キューをジャンプする理想的な厚かましい生き物の犬が存在しない)新しいチーム尾、私たちはなることができ、プロセスになることをチーム。したがって、我々が呼ぶこのモードは、FIFO(First In First Out)メモリ
組成キュー1.2
組成キューは三つの要素、即ち、第1チームを有し、尾部及びデータアレイ
構造次のキューの一例です
struct quene{
/*--这是一个队列的结构体,包含数据数组,队首和队尾--*/
int data[100];
int head;
int tail
};
キューを実装する方法1.3
以下は、基本動作をデキュー、コード、アレイの初期化が完了すると、エンキューの例であります
#include<stdio.h>
#include<stdlib.h>
struct quene{
/*--这是一个队列的结构体,包含数据数组,队首和队尾--*/
int data[100];
int head;
int tail
};
int main(){
struct quene q;
int i;
/*--初始化队列--*/
q.head = 1;
q.tail = 1;
for(i = 1;i <= 9;i++){
/*--队列中插入9个数--*/
scanf("%d",&q.data[q.tail]);
q.tail++;
}
while(q.head < q.tail){
/*--打印队首并将队首出队--*/
printf("%d\n",q.data[q.head]);
q.head++;
q.data[q.tail] = q.data[q.head];
q.tail++;
q.head++;
}
system("pause");
return 0;
}