青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 183,  comments - 10,  trackbacks - 0

隊列的兩個主要操作:入隊列、出隊列
棧的兩個主要操作:入棧、出棧
入隊列對應入棧
出隊列是出最早的,出棧是出最晚的

使用 360 瀏覽器,有個不錯的功能是可以恢復標簽,你關閉一個標簽,這個標簽就會進入待恢復表,如果待恢復表慢了,新加標簽,最早的標簽會消失,這是 FIFO 隊列。
但是如果點擊恢復標簽隊列,會恢復最近關閉的標簽,也就是最晚進入待恢復表中的標簽,所以這又是一種 LIFO 棧。

待恢復表既具有添加標簽的 FIFO 隊列性質,又具有恢復標簽并移除標簽的 LIFO 棧性質。
實現一個數據結構,使其既具有 FIFO 隊列的性質,又具有 LIFO 棧的性質。
由于標簽有很多,這里使用循環表來實現這個數據結構,早期的標簽會隨著新加入的標簽被覆蓋。

注意連續關閉兩個相同的標簽,第二次關閉時,不會將這個標簽存入待恢復表中。

這個表主要有三個操作
·入隊列
·出隊列
·出棧
沒有入棧,其實入棧也就是入隊列。

實現:

  1 #include <iostream>
  2 using namespace std;
  3 
  4 class Table360
  5 {
  6 private:
  7     int  capacity_;
  8     int* data_;
  9     int  size_;
 10     int  head_;
 11     int  tail_;
 12 public:
 13     Table360(int c = 10) : capacity_(c)
 14     {
 15         data_ = new int[capacity_];
 16         if (data_ == 0)
 17         {
 18             exit(1);
 19         }
 20         memset(data_, 0sizeof (int* capacity_);
 21         size_ = 0;
 22         head_ = 0;
 23         tail_ = -1;
 24     }
 25     Table360(const Table360& t) : capacity_(t.capacity_)
 26     {
 27         data_ = new int[capacity_];
 28         if (data_ == 0)
 29         {
 30             exit(1);
 31         }
 32         memset(data_, 0sizeof (int* capacity_);
 33         size_ = t.size_;
 34         head_ = t.head_;
 35         tail_ = t.tail_;
 36         for (int i = 0; i < size_; ++i)
 37         {
 38             data_[(head_+i) % capacity_] = t.data_[(t.head_ + i) % t.capacity_];
 39         }
 40     }
 41     void swap_(Table360& t)
 42     {
 43         swap(capacity_, t.capacity_);
 44         swap(data_, t.data_);
 45         swap(size_, t.size_);
 46         swap(head_, t.head_);
 47         swap(tail_, t.tail_);
 48     }
 49     Table360& operator = (const Table360& t)
 50     {
 51         Table360 temp(t);
 52         swap_(temp);
 53         return *this;
 54     }
 55     ~Table360()
 56     {
 57         delete [] data_;
 58         capacity_ = 0;
 59         size_ = 0;
 60         head_ = 0;
 61         tail_ = 0;
 62     }
 63     int size()
 64     {
 65         return size_;
 66     }
 67     bool empty()
 68     {
 69         return size_ == 0;
 70     }
 71     int top()
 72     {
 73         return data_[head_];
 74     }
 75     void enQueue(int item)
 76     {
 77         if (size_ >= capacity_)
 78         {
 79             deQueue();
 80         }
 81         tail_ = (tail_ + 1% capacity_;
 82         data_[tail_] = item;
 83         ++size_;
 84         //if (size_ >= capacity_)
 85         //{
 86         //    head_ = (head_ + 1) % capacity_;
 87         //    --size_;
 88         //    tail_ = (tail_ + 1) % capacity_;
 89         //    data_[tail_] = item;
 90         //    ++size_;
 91         //}
 92         //else
 93         //{
 94         //    tail_ = (tail_ + 1) % capacity_;
 95         //    data_[tail_] = item;
 96         //    ++size_;
 97         //}
 98     }
 99     void deQueue()
100     {
101         head_ = ++head_ % capacity_;
102         --size_;
103     }
104     // 其實沒有入棧操作,入棧即是入隊列
105     void push(int item)
106     {
107         enQueue(item);
108     }
109     int pop()
110     {
111         int tmp = tail_;
112         tail_ = (tail_ + capacity_ - 1% capacity_;
113         --size_;
114         return data_[tmp];
115     }
116     int stacktop()
117     {
118         return data_[tail_];
119     }
120 };
121 
122 int main()
123 {
124     Table360 t(20);
125     cout << t.size() << endl;
126     for (int i = 0; i < 100++i)
127     {
128         t.enQueue(i);
129     }
130     cout << t.size() << endl;
131     // cout << t.top() << endl;
132     while (!t.empty())
133     {
134         // cout << t.pop() << ' ';
135         cout << t.stacktop() << ' ';
136         t.pop();
137     }
138     cout << endl;
139     return 0;
140 }


其他鏈接:
http://zh.wikipedia.org/wiki/%E9%98%9F%E5%88%97
http://zh.wikipedia.org/wiki/%E5%A0%86%E6%A0%88
http://zh.wikipedia.org/wiki/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84
http://student.zjzk.cn/course_ware/data_structure/web/zhanhuoduilie/zhanhuoduilie3.2.1.htm
http://student.zjzk.cn/course_ware/data_structure/web/zhanhuoduilie/zhanhuoduilie3.1.1.htm
http://student.zjzk.cn/course_ware/data_structure/web/main.htm

posted on 2011-05-26 00:48 unixfy 閱讀(146) 評論(0)  編輯 收藏 引用
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品91| 久久久久免费| 国产日韩欧美91| 国产一区二区黄色| 狠狠色狠狠色综合日日五| 国产一区二区三区四区hd| 国内欧美视频一区二区| 亚洲国内精品在线| 国产精品99久久久久久白浆小说| 亚洲香蕉伊综合在人在线视看| 亚洲免费网址| 久久综合中文| 日韩一二三在线视频播| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲一区二区三区成人在线视频精品 | 亚洲蜜桃精久久久久久久| 一区二区日韩欧美| 免费成人av| 国产日韩欧美日韩大片| 午夜在线观看欧美| 亚洲欧美大片| 亚洲色图综合久久| 亚洲免费成人| 欧美在线免费| 亚洲伦理久久| 欧美日韩在线一区二区三区| 欧美视频亚洲视频| 黑人巨大精品欧美一区二区| 99国产精品视频免费观看一公开| 小辣椒精品导航| 亚洲大胆av| 亚洲男人第一网站| 免费在线日韩av| 国产日韩亚洲欧美综合| 日韩一二三在线视频播| 久久久精品动漫| 中文日韩在线| 欧美精品免费在线| 亚洲国产成人av好男人在线观看| 欧美一区二区三区免费视频 | 欧美不卡高清| 香蕉乱码成人久久天堂爱免费| 欧美成人久久| 亚洲国产精品视频| 久久精品国产精品| 亚洲欧美久久久| 国产精品久久国产精品99gif| 亚洲第一网站| 噜噜噜91成人网| 欧美在线视频免费| 国产一区二区精品| 欧美在线日韩在线| 亚洲永久免费观看| 国产精品日产欧美久久久久| 在线一区二区三区四区五区| 欧美高清视频免费观看| 鲁大师成人一区二区三区| 精品成人一区二区三区四区| 久久激情视频| 久久激情婷婷| 亚洲国产精品久久久久秋霞不卡| 久久综合伊人77777蜜臀| 亚洲精品1区| 免费永久网站黄欧美| 久久久久se| 亚洲国产天堂久久综合| 欧美激情一区二区三区在线| 欧美+日本+国产+在线a∨观看| 亚洲国产日韩一级| 欧美专区一区二区三区| 久久女同精品一区二区| 久久久久久久久久久成人| 国产乱理伦片在线观看夜一区| 午夜亚洲一区| 亚洲最快最全在线视频| 国产精品久久久久久久久免费樱桃 | 亚洲图中文字幕| 日韩视频在线观看免费| 国产精品盗摄久久久| 午夜精品久久久久久久久久久久久| 一区二区激情视频| 国产精品腿扒开做爽爽爽挤奶网站| 欧美影视一区| 久久亚洲国产成人| 亚洲精品视频免费| 99精品福利视频| 国产一区二区三区网站| 欧美色道久久88综合亚洲精品| 99re热这里只有精品免费视频| 亚洲高清二区| 国产一本一道久久香蕉| 久久精品国产99精品国产亚洲性色| 在线成人免费视频| 欧美大片va欧美在线播放| 欧美黄色片免费观看| 午夜免费在线观看精品视频| 欧美成人激情视频| 欧美高清你懂得| 欧美激情亚洲自拍| 久久久精品久久久久| 亚洲精品裸体| 性欧美暴力猛交69hd| 亚洲大片av| 在线一区二区三区四区| 影院欧美亚洲| 亚洲一区二区三区四区中文 | 男女精品网站| 亚洲一区二区在| 欧美日本三区| 日韩视频一区二区在线观看 | 亚洲每日在线| 亚洲韩国青草视频| 国产精品专区h在线观看| 麻豆av一区二区三区| 国产精品久久久久毛片软件 | 蜜桃久久精品乱码一区二区| 欧美日韩成人| 欧美成在线观看| 国产欧美精品| 99精品国产在热久久下载| 最新国产精品拍自在线播放| 欧美亚洲视频一区二区| 亚洲欧美在线免费观看| 一区二区在线免费观看| 午夜天堂精品久久久久 | 久久综合图片| 日韩视频在线免费观看| 久久综合久久88| 亚洲在线中文字幕| 91久久精品日日躁夜夜躁国产| 亚洲一区二区在线免费观看| 亚洲毛片在线观看| 免费一级欧美片在线观看| 国产精品免费久久久久久| 亚洲激情在线观看| 亚洲日本在线视频观看| 久久久久一本一区二区青青蜜月| 欧美伊人久久久久久久久影院| 国产精品国产三级欧美二区 | 亚洲免费观看| 一区二区国产精品| 一区二区三区偷拍| 亚洲激情在线| 欧美成人精品在线播放| 亚洲电影一级黄| 亚洲日本免费电影| 欧美激情一区二区三区不卡| 久久久久国产精品www| 亚洲成人在线网站| 欧美成人午夜激情| 欧美高清自拍一区| 欧美国产综合| 99视频精品全部免费在线| 亚洲黄色免费电影| 亚洲人成久久| 亚洲欧美精品中文字幕在线| 模特精品裸拍一区| 亚洲国产影院| 99精品国产在热久久下载| 欧美日韩免费一区二区三区视频| 亚洲精品国产视频| 亚洲在线观看视频网站| 国产欧美在线| 久久亚洲欧洲| 宅男噜噜噜66一区二区| 久久激情久久| 99国产精品| 国产欧美高清| 欧美伦理91| 午夜精品久久久久久久蜜桃app | 久久精品亚洲精品| 亚洲大胆人体视频| 亚洲天天影视| 欧美日韩国产成人在线观看| 欧美日韩伦理在线| 韩国一区二区三区美女美女秀| 99精品黄色片免费大全| 久久久久久欧美| 在线中文字幕一区| 欧美日韩99| 午夜精品久久久久久久蜜桃app | 欧美一区二区观看视频| 欧美性感一类影片在线播放| 亚洲欧美另类中文字幕| 欧美激情成人在线视频| 亚洲女性裸体视频| 亚洲日本aⅴ片在线观看香蕉| 欧美日韩中文在线观看| 久久偷窥视频| 亚洲免费视频在线观看| 亚洲欧洲另类| 久久久久九九九| 国产精品日韩欧美大师| 欧美mv日韩mv国产网站app| 中文亚洲欧美| 欧美一区二区三区久久精品茉莉花 | 国产精品久久久久aaaa樱花| 亚洲欧美另类中文字幕| 亚洲日本精品国产第一区| 国产精品久久久久一区二区三区共 |