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

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 閱讀(430) 評論(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精品久久久久久9| 亚洲第一区色| 亚洲精品黄色| 国产精品久久久久久久久借妻| 亚洲自拍电影| 欧美制服丝袜第一页| 伊人久久综合97精品| 欧美成人影音| 欧美婷婷久久| 米奇777超碰欧美日韩亚洲| 毛片基地黄久久久久久天堂| 99re8这里有精品热视频免费 | 久久精品一区二区三区四区| 久久激情视频久久| 亚洲日本va午夜在线电影| 亚洲乱码视频| 狠狠色2019综合网| 欧美激情一区二区三区全黄| 国产精品成人播放| 免费看亚洲片| 国产精品久久久久久影视 | 99视频+国产日韩欧美| 99国产精品久久久久久久久久 | 国产婷婷一区二区| 欧美激情网友自拍| 国产精品美女久久久久av超清| 久久一二三区| 国产精品美女久久久久久久 | 欧美在线亚洲综合一区| 久久综合色88| 久久国产一区二区| 欧美日韩一区二区三区| 久久综合影音| 国产精品美女久久久久aⅴ国产馆| 久久这里只有精品视频首页| 欧美视频亚洲视频| 亚洲电影观看| 国产亚洲精品bv在线观看| 亚洲欧洲一区二区在线播放| 国产一区二区毛片| 亚洲一品av免费观看| 亚洲日本激情| 久久亚裔精品欧美| 久久偷看各类wc女厕嘘嘘偷窃| 欧美日韩一区二区三区在线观看免| 麻豆freexxxx性91精品| 国产欧美日韩精品在线| 日韩视频在线观看国产| 亚洲人成网在线播放| 久久久人成影片一区二区三区| 欧美在线视频免费播放| 国产精品久久久久久亚洲毛片| 亚洲级视频在线观看免费1级| 在线观看欧美视频| 久久久无码精品亚洲日韩按摩| 欧美在线视频免费| 国产视频精品va久久久久久| 亚洲一区免费观看| 小嫩嫩精品导航| 国产精品人人做人人爽| 在线视频欧美日韩| 亚洲欧美网站| 国产欧美视频一区二区| 亚洲一区网站| 久久精品国产一区二区三区| 国产嫩草影院久久久久| 性久久久久久久久| 久久婷婷亚洲| 亚洲国产日韩一区二区| 久热成人在线视频| 亚洲国产高清aⅴ视频| 亚洲精品乱码久久久久久蜜桃麻豆| 久久综合色影院| 91久久在线视频| 国产精品99久久久久久久vr| 国产精品www网站| 午夜精品久久久99热福利| 久久精品主播| 亚洲人成毛片在线播放女女| 欧美喷水视频| 亚洲欧美国产三级| 蜜桃av综合| 日韩亚洲视频| 国产日韩欧美高清| 裸体丰满少妇做受久久99精品 | 亚洲一区二区精品视频| 国产欧美日韩亚洲一区二区三区| 欧美一区二区三区精品电影| 欧美高清视频一区| 亚洲欧美国产不卡| 精品电影在线观看| 欧美日韩一区二区三区高清| 午夜精品久久久久久久久| 免费短视频成人日韩| 一本综合久久| 国产主播在线一区| 欧美另类变人与禽xxxxx| 亚洲免费人成在线视频观看| 美女视频黄免费的久久| 日韩亚洲欧美一区二区三区| 国产欧美 在线欧美| 女主播福利一区| 欧美亚洲一区三区| 亚洲精品三级| 久久伊人精品天天| 亚洲欧美日韩一区在线观看| 亚洲大胆女人| 国产视频一区三区| 欧美日韩亚洲综合在线| 久久午夜激情| 欧美一区永久视频免费观看| 亚洲精品一区在线| 欧美xart系列高清| 久久久久久久欧美精品| 亚洲视频免费在线观看| 亚洲国产高清在线| 国产一区二区三区直播精品电影| 欧美理论电影在线播放| 久久一二三四| 久久国产精彩视频| 亚洲欧美视频一区| 亚洲社区在线观看| 亚洲最新在线| 亚洲美女网站| 亚洲精选成人| 亚洲精品视频在线观看免费| 欧美福利在线| 欧美成人福利视频| 麻豆成人在线观看| 久久久噜噜噜久久中文字免| 亚洲永久免费av| 亚洲一区成人| 亚洲在线日韩| 午夜精品成人在线视频| 夜久久久久久| 一区二区国产精品| 一区二区三区四区五区视频| 日韩午夜电影| 一区二区三区福利| 亚洲视频一区二区| 亚洲综合电影| 亚洲欧美视频在线观看| 午夜精品久久一牛影视| 欧美一区二区三区另类| 欧美一级免费视频| 久久精品国语| 欧美1区2区视频| 亚洲国产精品美女| 亚洲美女91| 亚洲午夜精品网| 欧美一区二区私人影院日本| 欧美在线播放一区| 久久婷婷久久| 欧美精品一区二区久久婷婷 | 亚洲在线视频一区| 午夜国产欧美理论在线播放 | 亚洲免费播放| 亚洲欧美日韩国产成人精品影院| 亚洲免费小视频| 久久久久久**毛片大全| 免费亚洲电影| 国产精品久久国产精品99gif| 国产精品美女久久久久av超清| 国产欧美亚洲日本| 亚洲国产第一| 亚洲图片在线| 久久免费99精品久久久久久| 欧美激情欧美激情在线五月| 亚洲另类黄色| 久久国内精品视频| 欧美日韩国产限制| 国产欧美日韩在线| 亚洲欧洲日本国产| 香蕉成人伊视频在线观看| 老鸭窝毛片一区二区三区| 亚洲精品女av网站| 亚洲午夜女主播在线直播| 久久精品国产精品亚洲综合 | 欧美一区二区私人影院日本| 久久人人九九| 欧美亚一区二区| 1769国内精品视频在线播放| 亚洲私人影院| 你懂的亚洲视频| 亚洲女爱视频在线| 欧美激情精品久久久久久久变态| 国产精品久久久一区二区| 亚洲国产精品嫩草影院| 小黄鸭视频精品导航| 亚洲激情成人在线| 久久国产黑丝| 国产精品乱码一区二区三区 | 国产精品午夜春色av| 亚洲另类自拍| 欧美成年人视频网站欧美| 中文精品在线|