Angular, Blockchain, Science とか

Angular, Blockchain, Science全般 の情報を主に書いていきます。

キュー

普通のキューをCで書きました。基礎は大事です。ポインタの使い方にはなれましょう。

struct student {
  int num;
  char name[20];
  struct student *next;
};

struct student *root=NULL; //最後尾がNULL

void enqueue(struct student *r) //追加する
{
  struct student *p;
  if(root=NULL)
    root=r;
  else{
    p=root;
    while(p->next!=NULL)
      p=p->next;
    p->next=r;
  }
  r->next=NULL;
  return;
}

struct student *dequeue() //取り出す
{
  struct student *p;
  if(root=NULL)
    return NULL;
  p=root;
  root=p->next;
  return p;
}