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

emptysoul

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  25 Posts :: 0 Stories :: 23 Comments :: 0 Trackbacks

常用鏈接

留言簿(18)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

模板模式(Template)定義一個操作中算法的骨架,將一些步驟的執行延遲到其子類中。結構圖如下:
 

我們將模板模式應用到泡冒排序算法中,將算法中的位置交換及大小比較獨立出來作為模板使用,使算法在不改變主程序骨架的情況下支持多種數據類型,結構圖如下:


實現代碼:
//Bubblesort.h
class Bubblesort
{
public:
    
virtual ~Bubblesort();

    
void DoSort();
    
virtual void Swap(int= 0;
    
virtual bool IsNeedtoSwap(int= 0;
protected:
    Bubblesort();
    
int m_nLength;
};

//Bubblesort.cpp
#include "stdafx.h"
#include 
"Bubblesort.h"

Bubblesort::Bubblesort()
{
    m_nLength 
= 0;
}

Bubblesort::
~Bubblesort()
{

}

void Bubblesort::DoSort()
{
    
for (int i = m_nLength - 2; i >= 0--i)
    {
        
for(int j = 0; j <= i; ++j)
        {
            
if(IsNeedtoSwap(j))
            {
                Swap(j);
            }
        }
    }
}

//IntBubblesort.h
#include <iostream>
#include 
"Bubblesort.h"

class IntBubblesort : public Bubblesort
{
public:
    IntBubblesort();
    
virtual ~IntBubblesort();

    
void Sort(int*int);
    
void Swap(int);
    
bool IsNeedtoSwap(int);

    friend std::ostream
& operator<<(std::ostream& os, IntBubblesort& bubble);
private:
    
int* m_pArray;
};

//IntBubblesort.cpp
#include "stdafx.h"
#include 
"IntBubblesort.h"

IntBubblesort::IntBubblesort()
{
    
}

IntBubblesort::
~IntBubblesort()
{

}

void IntBubblesort::Sort(int* pArray, int nLength)
{
    
this->m_pArray = pArray;
    
this->m_nLength = nLength;
    
this->DoSort();
}

void IntBubblesort::Swap(int nIndex)
{
    
int nTemp = m_pArray[nIndex];
    m_pArray[nIndex] 
= m_pArray[nIndex + 1];
    m_pArray[nIndex 
+ 1= nTemp;
}

bool IntBubblesort::IsNeedtoSwap(int nIndex)
{
    
return m_pArray[nIndex] > m_pArray[nIndex + 1];
}

std::ostream
& operator<<(std::ostream& os, IntBubblesort& bubble)
{
    
for(int i = 0; i < bubble.m_nLength; ++i)
    {
        os 
<< bubble.m_pArray[i] << " ";
    }

    
return os;
}

//DoubleBubblesort.h
#include <iostream>
#include 
"Bubblesort.h"

class DoubleBubblesort : public Bubblesort
{
public:
    DoubleBubblesort();
    
virtual ~DoubleBubblesort();

    
void Sort(double*int);
    
void Swap(int);
    
bool IsNeedtoSwap(int);

    friend std::ostream
& operator<<(std::ostream& os, DoubleBubblesort& bubble);
private:
    
double* m_pArray;
};

//DoubleBubblesort.cpp
#include "stdafx.h"
#include 
"DoubleBubblesort.h"
#include 
<iomanip>

DoubleBubblesort::DoubleBubblesort()
{

}

DoubleBubblesort::
~DoubleBubblesort()
{

}

void DoubleBubblesort::Sort(double* pArray, int nLength)
{
    
this->m_pArray = pArray;
    
this->m_nLength = nLength;
    
this->DoSort();
}

void DoubleBubblesort::Swap(int nIndex)
{
    
int nTemp = m_pArray[nIndex];
    m_pArray[nIndex] 
= m_pArray[nIndex + 1];
    m_pArray[nIndex 
+ 1= nTemp;
}

bool DoubleBubblesort::IsNeedtoSwap(int nIndex)
{
    
return m_pArray[nIndex] > m_pArray[nIndex + 1];
}

std::ostream
& operator<<(std::ostream& os, DoubleBubblesort& bubble)
{
    
for(int i = 0; i < bubble.m_nLength; ++i)
    {
        os 
<< std::fixed << std::setprecision(2<< bubble.m_pArray[i] << " ";
    }

    
return os;
}

//main.cpp
#include "stdafx.h"
#include 
"Bubblesort.h"
#include 
"IntBubblesort.h"
#include 
"DoubleBubblesort.h"
#include 
<iostream>

using namespace std;

int main(int argc, char* argv[])
{
    
int nArray[] = {2014169101318};
    
int nLen = sizeof nArray / sizeof nArray[0];
    IntBubblesort intBubble;
    intBubble.Sort(nArray, nLen);
    cout 
<< "int排序后的結果:" << intBubble << endl;

    
double dArray[] = {9.610.713.818.528.5};
    nLen 
= sizeof dArray / sizeof dArray[0];
    DoubleBubblesort dlBubble;
    dlBubble.Sort(dArray, nLen);
    cout 
<< "double排序后的結果:" << dlBubble << endl;
    
    
return 0;
}

最后輸出為:
int排序后的結果:9 10 13 14 16 18 20
double排序后的結果:9.60 10.70 13.80 18.50 28.50
posted on 2009-02-12 17:32 emptysoul 閱讀(429) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲一区二区三区色| 久久精品99国产精品酒店日本| 欧美性猛交xxxx乱大交蜜桃| 欧美激情一区二区三区| 欧美日韩日本网| 国产乱码精品1区2区3区| 国产欧美三级| 亚洲高清在线观看| 一区二区高清在线观看| 亚洲视屏一区| 久久成人综合视频| 亚洲盗摄视频| 亚洲毛片播放| 欧美在线免费播放| 欧美激情在线观看| 国产免费观看久久黄| 亚洲国产岛国毛片在线| 亚洲香蕉在线观看| 久久夜色精品国产| 99综合视频| 麻豆精品一区二区av白丝在线| 欧美日韩免费在线| 雨宫琴音一区二区在线| 亚洲午夜精品17c| 久久精品欧美日韩| 日韩视频在线一区| 免费成人av资源网| 国产情侣久久| 亚洲女性喷水在线观看一区| 欧美成人午夜影院| 国产麻豆日韩| 欧美日韩123| 国产精品xvideos88| 一区免费视频| 翔田千里一区二区| 亚洲乱码一区二区| 久久日韩精品| 国产婷婷色一区二区三区在线| 亚洲另类自拍| 久久久水蜜桃av免费网站| 一本色道久久综合狠狠躁篇怎么玩 | 在线观看成人一级片| 亚洲欧美春色| 日韩视频一区二区在线观看| 麻豆九一精品爱看视频在线观看免费| 国产精品多人| 亚洲精选成人| 欧美黑人在线播放| 久久久久久综合| 国产主播在线一区| 亚洲欧美日韩一区二区三区在线观看| 亚洲激情成人| 免费亚洲电影在线| 亚洲精品乱码视频| 亚洲国产成人一区| 女女同性女同一区二区三区91| 国产真实乱子伦精品视频| 久久精品中文| 久久久www成人免费精品| 国产亚洲精品美女| 久久不射网站| 久久黄色网页| 在线精品国精品国产尤物884a| 久久夜色精品国产噜噜av| 欧美自拍偷拍午夜视频| 黄色国产精品| 亚洲高清激情| 欧美日韩在线观看视频| 亚洲欧美日韩一区| 亚洲一区二区免费看| 国产日韩欧美成人| 欧美1区2区3区| 欧美成人嫩草网站| 亚洲一级电影| 欧美一区2区三区4区公司二百| 激情综合色综合久久综合| 欧美激情a∨在线视频播放| 欧美美女bb生活片| 亚洲欧美日韩久久精品| 欧美亚洲视频在线观看| 亚洲高清一二三区| 一区二区成人精品| 国产午夜精品福利| 亚洲国产精品一区制服丝袜| 欧美日韩亚洲三区| 亚洲国产美女精品久久久久∴| 黄色精品一二区| 亚洲国产精品成人综合| 欧美吻胸吃奶大尺度电影| 欧美亚洲一区二区三区| 老妇喷水一区二区三区| 国产精品99久久久久久久女警| 亚洲直播在线一区| 最近中文字幕日韩精品| 亚洲伊人第一页| 亚洲另类视频| 欧美专区在线播放| 亚洲一区在线播放| 久久亚洲不卡| 午夜精品一区二区三区在线视| 久久一区欧美| 午夜久久电影网| 欧美成人四级电影| 久久久久久久久综合| 欧美三级电影精品| 乱中年女人伦av一区二区| 欧美午夜精品久久久久久人妖 | 国产精品激情av在线播放| 欧美成人国产| 国产日韩欧美制服另类| 亚洲免费久久| 亚洲激情在线播放| 久久精品女人的天堂av| 性8sex亚洲区入口| 欧美久久久久久| 欧美激情1区2区| 在线电影一区| 久久国产主播| 久久久www| 国产日韩欧美另类| 亚洲男女毛片无遮挡| 亚洲一区二区高清| 欧美日韩三级| 亚洲国产成人91精品| 亚洲国产91| 久久免费精品日本久久中文字幕| 久久国产毛片| 国产亚洲福利| 欧美亚洲在线播放| 欧美一区二区三区免费看| 国产精品久久久久aaaa九色| 99视频精品在线| 亚洲午夜一区| 国产精品盗摄一区二区三区| av成人免费| 亚洲综合欧美| 国产精品黄页免费高清在线观看| 亚洲一二三区精品| 欧美一区二区视频观看视频| 国产精品一区二区三区免费观看| 亚洲一品av免费观看| 欧美综合国产精品久久丁香| 国产日韩欧美综合精品| 久久国产精品亚洲77777| 久久综合色88| 亚洲欧洲日本一区二区三区| 欧美精品色综合| 一区二区精品在线观看| 欧美一二三视频| 激情综合色综合久久| 国产精品一区免费在线观看| 免费欧美在线视频| 亚洲国产精品123| aaa亚洲精品一二三区| 欧美日韩在线播放一区| 亚洲宅男天堂在线观看无病毒| 久久久精品国产一区二区三区| 曰韩精品一区二区| 欧美激情中文字幕一区二区| 99riav1国产精品视频| 欧美一区二区在线| 在线观看日韩www视频免费 | 亚洲一区亚洲| 国内精品久久国产| 欧美大片免费| 亚洲一区二区高清视频| 久热成人在线视频| 一区二区欧美激情| 国产一区二区三区久久久| 牛牛国产精品| 亚洲影视在线播放| 欧美大片一区二区| 亚洲欧美激情视频| 亚洲欧洲精品一区| 国产欧美一区二区白浆黑人| 久热这里只精品99re8久| 亚洲日韩欧美一区二区在线| 久久九九久久九九| 在线一区二区三区四区| 国产亚洲成精品久久| 欧美日韩系列| 美女久久一区| 欧美一区二区三区免费在线看| 亚洲精品国产拍免费91在线| 久久免费午夜影院| 午夜精品久久久久久久| 亚洲精品字幕| 在线观看国产一区二区| 国产精品一区二区黑丝| 欧美日韩国产综合视频在线观看| 久久久久一区二区三区| 亚洲午夜视频在线观看| 亚洲欧洲在线看| 免费在线日韩av| 久久精品国产综合精品| 亚洲欧美成人精品| 一区二区三区四区五区视频| 91久久在线播放| 亚洲国产日本| 亚洲第一区在线|