普通のキュー
30分プログラム、その717。最近、functionalなキューばかり作っていたので、普通のキューも作ってみました。
ま、Perlだから配列にpushしてshiftするとキューになるんですけどね! せっかくなので、オブジェクトっぽくしておきました。
使い方
my $q = Queue->new(); $q->add(1); $q->add(2); $q->add(3); print $q->get,"\n"; print $q->get,"\n"; print $q->get,"\n";
ソースコード
#! /usr/bin/perl # -*- mode:perl; coding:utf-8 -*- # # queue.pl - # # Copyright(C) 2010 by mzp # Author: MIZUNO Hiroki / mzpppp at gmail dot com # http://howdyworld.org # # Timestamp: 2010/01/08 22:53:04 # # This program is free software; you can redistribute it and/or # modify it under MIT Lincence. # use strict; use warnings; use Data::Dumper; { package Queue; sub new { my $class = shift; return bless [],$class; } sub add{ my ($self,$v) = @_; push @$self,$v; } sub get { my ($self) = @_; shift @$self; } } my $q = Queue->new(); $q->add(1); $q->add(2); $q->add(3); print $q->get,"\n"; print $q->get,"\n"; print $q->get,"\n";