在线现看午夜福利片|女人16久久免费视频|鲁丝片一区鲁丝片二区鲁丝|一区二区三区欧美在线

  1. 
    
    <b id="glvx9"></b>
        1. <blockquote id="glvx9"><meter id="glvx9"></meter></blockquote>
            首頁(yè) 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 繽紛校園 英語(yǔ)學(xué)習(xí)
            2010考研 | 自學(xué)考試 | 成人高考 | 專 升 本 | 法律碩士 | MBA/MPA | 中 科 院
            四六級(jí) | 商務(wù)英語(yǔ) | 公共英語(yǔ) | 職稱日語(yǔ) | 職稱英語(yǔ) | 博思 | 口譯筆譯 | GRE GMAT | 日語(yǔ) | 托福
            雅思 | 專四專八 | 新概念 | 自考英語(yǔ) | 零起點(diǎn)英、、、韓語(yǔ) | 在職申碩英語(yǔ)
            在職攻碩英語(yǔ) | 成人英語(yǔ)三級(jí)
            等級(jí)考試 | 水平考試 | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
            公務(wù)員 | 報(bào)關(guān)員 | 報(bào)檢員 | 外銷員 | 司法考試 | 導(dǎo)游考試 | 教師資格 | 國(guó)際商務(wù)師 | 跟單員
            單證員 | 物流師 | 價(jià)格鑒證師 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 人力資源管理師 | 管理咨詢師
            期貨從業(yè)資格 | 社會(huì)工作者
            會(huì)計(jì)職稱 | 注會(huì)CPA | 經(jīng)濟(jì)師 | 統(tǒng)計(jì)師 | 注冊(cè)稅務(wù)師 | 評(píng)估師 | 精算師 | 高會(huì) | ACCA | 審計(jì)師
            法律顧問(wèn) | 會(huì)計(jì)證
            一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)師 | 監(jiān)理師 | 安全師 | 咨詢師 | 結(jié)構(gòu)師 | 建筑師 | 安全評(píng)價(jià)師
            房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 設(shè)備監(jiān)理師 | 巖土工程師 | 質(zhì)量資格 | 房地產(chǎn)經(jīng)紀(jì)人 | 造價(jià)員
            投資項(xiàng)目管理 | 土地代理人 | 環(huán)保師 | 環(huán)境影響評(píng)價(jià) | 物業(yè)管理師 | 城市規(guī)劃師 | 公路監(jiān)理師
            公路造價(jià)工程師 | 招標(biāo)師
            執(zhí)業(yè)護(hù)士 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 衛(wèi)生資格
            您現(xiàn)在的位置: 考試吧(Exam8.com) > 軟件水平考試 > 系統(tǒng)分析師 > 正文

            封裝的變化之排序算法中的封裝

            設(shè)想這樣一個(gè)需求,我們需要為自己的框架提供一個(gè)負(fù)責(zé)排序的組件。目前需要實(shí)現(xiàn)的是冒泡排序算法和快速排序算法,根據(jù)“面向接口編程”的,我們可以為這些排序算法提供一個(gè)統(tǒng)一的接口ISort,在這個(gè)接口中有一個(gè)方法Sort(),它能接受一個(gè)object數(shù)組參數(shù)。對(duì)數(shù)組進(jìn)行排序后,返回該數(shù)組。接口的定義

             

            public interface ISort
            {
             void Sort(ref object beSorted);
            }

              其類圖

               然而一般對(duì)于排序而言,排列是有順序之分的,例如升序,或者降序,返回的結(jié)果也不相同。最簡(jiǎn)單的方法我們可以利用if語(yǔ)句來(lái)實(shí)現(xiàn)這一目的,例如在QuickSort類中:

             

            public class QuickSort:ISort
            {
             private string m_SortType;
             public QuickSort(string sortType)
             {
              m_SortType = sortType;
             }
             public void Sort(ref object beSorted)
             {
              if (m_SortType.ToUpper().Trim() == “ASCENDING”)
              {
               //執(zhí)行升序的快速排序;
              }
              else
              {
               //執(zhí)行降序的快速排序;
              }
             }
            }

              當(dāng)然,我們也可以將string類型的SortType定義為枚舉類型,減少出現(xiàn)錯(cuò)誤的可能性。然而仔細(xì)閱讀代碼,我們可以發(fā)現(xiàn)這樣的代碼是非常僵化的,一旦需要擴(kuò)展,如果要求我們?cè)黾有碌呐判蝽樞,例如字典順序,那么我們面臨的工作會(huì)非常繁重。也就是說(shuō),變化產(chǎn)生了。通過(guò)分析,我們發(fā)現(xiàn)所謂排序的順序,恰恰是排序算法中最關(guān)鍵的一環(huán),它決定了誰(shuí)排列在前,誰(shuí)排列在后。然而它并不屬于排序算法,而是一種比較的策略,后者說(shuō)是比較的行為。

            轉(zhuǎn)帖于:軟件水平考試_考試吧
            文章搜索
            封裝的變化之排序算法中的封裝網(wǎng)友評(píng)論網(wǎng)友評(píng)論
            版權(quán)聲明 --------------------------------------------------------------------------------------
                如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請(qǐng)注明出處。
             gaoxiaoliang