容器排序 策略模式

2022-09-18 06:12:36 字數 895 閱讀 8185

將比較的方法封裝到單獨的乙個類中,做到實體類和方法類分離。方法類實現comparator介面。

在上一片部落格中,是用氣泡排序法進行排序,在實際的應用中,我們直接呼叫collections類中的sort方法即可,具體請看jdk幫助文件。

1

package

hl7_11;23

import

j**a.util.arraylist;

4import

j**a.util.collections;

5import

j**a.util.comparator;

6import

j**a.util.list;

7import

j**a.util.set;

8import

j**a.util.treeset;910

public

class

setsort 21}

2223

class

student0

27public student0(int

id, string name)

3132

public

intgetid()

35public

void setid(int

id)

38public

string getname()

41public

void

setname(string name)

44@override

45public

string tostring()

4849}50

class com implements comparator

55 }

策略模式和排序演算法

常用的排序演算法有選擇排序,插入排序,氣泡排序,快速排序,歸併排序,希爾排序,堆排序這7種。假設現在有7個陣列,他們分別需要用到這7種排序方式的其中乙個進行排序應該怎麼辦呢。最常見的辦法就是寫乙個這樣的工具類 created by hao on 2016 6 19.public class sort...

策略模式之排序演算法

策略模式 strategy 它定義了演算法家族,分別封裝起來,讓它們之間可以相互替換,此模式讓演算法的變化,不會影響到使用演算法的客戶。排序介面 isort.h pragma once class isort virtual void dosort int a,int len 0 氣泡排序演算法類b...

模式 策略模式

前言 所有的設計模式都是基於程式設計屆前輩們的不斷實踐得出的解決一類問題中比較有效高效的程式設計方法。策略模式 策略模式用於解決業務中不同場景下統一行為的細微差別問題。策略模式遵循 開閉原則 舉個例子來說,在購物車功能中,結算 的時候會根據使用者的不同級別去打折,那麼打折計算 的這一行為就會有不同演...