`

JDP02-[策略模式]-多种排序算法

 
阅读更多

一)  策略模式简介

      策略模式的结构图如下所示:

 

       策略模式

二)  Java语言描述

      用策略模式实现各种排序算法的调用:

 

/*
 * 策略模式(策略构件)
 * @author junin
 */
public class Strategy 
{
    private StrategyInter strategy;
    public Strategy(StrategyInter strategy)
   {
        this.strategy = strategy;
    }
    public void sort() 
    {
        strategy.sort();
    }
}

 

/*
 * 策略模式(策略接口)
 * @author junin
 */
public abstract class StrategyInter 
{
    public abstract void sort();
}

 

/*
 * 策略模式(具体策略类)
 * @author junin
 */
public class BuddleSort extends StrategyInter 
{
    public void sort()
   {
        //BuddleSort code
        System.out.println("===BuddleSort===");
    }
}

 

/**
* 策略模式(具体策略类)
* @author junin
*/
public class InsertSort extends StrategyInter 
{
    public void sort() 
   {
        //InsertSort code
        System.out.println("===InsertSort===");
    }
}

 

/**
* 策略模式(具体策略类)
* @author junin
*/
public class QuickSort extends StrategyInter 
{
    public void sort()
   {
       //QuickSort code
       System.out.println("===QuickSort===");
   }
}

 

/**
* 策略模式(具体策略类)
* @author solid
*/
public class SelectSort extends StrategyInter 
{
    public void sort() 
    {
        //SelectSort code
        System.out.println("===SelectSort===");
    }
}
 
分享到:
评论

相关推荐

    超微 X11DPG-QT主板用户手册

    ### 超微 X11DPG-QT 主板用户手册关键知识点解析 #### 一、产品概述 **超微 X11DPG-QT** 是一款由 **Super Micro Computer, Inc.**(以下简称“Supermicro”)设计并制造的专业级服务器主板。此主板面向对性能、...

    DP-means k - means聚类算法的比较

    标题中的"DP-means"和"k-means"都是在数据挖掘和机器学习领域广泛应用的聚类算法。这两种方法主要用于无监督学习,即在没有预先指定类别的情况下,将数据集中的对象自动分组到不同的类别中。现在,我们将深入探讨这...

    明华汉澳DP-R123-U-SB2(X3-HZ) RD及DP串口系列读写器演示程序及开发包.zip

    适用于RD-EB、RD-ET、RD-EZ、RD-EB-MX、RD-ET-MX、RD-EZ-MX、KRD-EB、KRD-ET、KRD-EZ、KRD-EB-MX、KRD-ET-MX、KRD-EZ-MX 、SRD-R100、Q3-R100、Q3-R101、Q3-R102、DP-R103、DP-R 113、DP-R123、DP-R133、DP-R143、...

    dp-8016p-pk 32位驱动

    《松下DP-8016P/PK 32位驱动详解及安装指南》 在信息技术领域,打印机是日常办公不可或缺的设备之一。松下DP-8016P和DP-8020P作为高效能的商务打印机,为用户提供了高质量的文档输出服务。然而,为了让这些设备正常...

    STM32cubeMX--STM32F427--dp83848---freeRTOS--LWIP点灯实验

    在配置dp83848时,需要设置正确的接口模式、速度和双工状态,并确保两者之间的MDI/MDIX自动交叉功能正常工作。 freeRTOS是一个实时操作系统,用于资源有限的嵌入式系统。在这个实验中,它将被用作任务调度器,允许...

    DP-302打印服务器1.02版

    DP-302的USB接口打印服务器为用户提供在局域网内分享他们的打印机的服务,并对于那些DP-302兼容的打印机产品提供在线打印服务。DP-302打印服务器允许多个用户直接从电脑上发送文件传输到打印机上进行打印工作。在...

    天际航图像快速建模系统DP-Modeler2.3

    《天际航图像快速建模系统DP-Modeler2.3》是一款专为3D建模和视觉效果设计的专业软件,结合了先进的图像处理技术和高效的工作流程,旨在为用户提供便捷、精准的三维模型构建能力。DP-Modeler是天际航公司的明星产品...

    动态规划(DP)-背包问题算法详解背包九讲

    动态规划(DP)——背包问题算法详解[背包九讲]

    DP-301U网络打印服务器驱动

    DP-301U作为D-LINK的一款产品,支持多种网络协议,如TCP/IP、DHCP、DNS和PPPoE,确保了在各种网络环境下的兼容性。 DP-301U的驱动程序是确保其正常运行的关键软件组件。驱动程序是计算机硬件与操作系统之间的桥梁,...

    D-Link DP-302 打印服务器驱动

    【D-Link DP-302 打印服务器驱动】是一款专为D-Link公司的DP-302打印服务器设计的驱动程序。该驱动程序在IT领域中扮演着至关重要的角色,因为它允许计算机与DP-302打印服务器之间进行有效的通信,确保打印机能够正确...

    libsvm-dp-master

    【libsvm-dp-master】是一个基于著名的开源库【libsvm】的扩展版本,它引入了动态规划(DP)算法,以适应更广泛的机器学习任务,尤其是那些需要神经网络集成的场景。libsvm-dp-master的核心目标是提升模型的性能和...

    D-Link DP-302 V1.03 打印服务器固件

    D-Link DP-302 打印服务器固件,最新V1.03版本。也是最终版本,支持更多打印机。

    DP83848-单路10100_Mbs以太网收发器在省电模式下的初始化

    ### DP83848-单路10/100_Mbs以太网收发器在省电模式下的初始化 #### 概述 本文档主要介绍了DP83848这款10/100Mbps单路以太网收发器在省电模式下的初始化流程及相关设置。DP83848是一款高性能、低功耗的以太网物理...

    DP-Modeler操作步骤.pdf.zip

    2. **导入数据**:DP-Modeler支持多种数据格式,如S5格式。用户可以将所需的数据文件导入到软件中,进行预览和编辑。 3. **数据处理**:在导入数据后,用户可以利用DP-Modeler的工具进行数据清洗、转换和整合,确保...

    Panasonic压力传感器DP-100.pdf

    松下公司的DP-100是一款压力传感器,该传感器具有多种功能和特性,适用于不同的工业应用环境。在详细讨论这些知识点之前,需要对一些相关概念和技术术语进行解释和阐述,以便更好地理解文档中提到的DP-100传感器的...

    DP-ModelerV2.3 用户手册

    ### DP-ModelerV2.3 用户手册知识点详解 #### 1. 系统简介 **1.1 产品概述** DP-ModelerV2.3是一款由武汉天际航信息科技股份有限公司研发的图像快速建模系统。该系统主要用于通过二维图像数据构建高质量的三维...

    Dynamic-programming-DP-backpack.rar_dp算法

    动态规划(Dynamic Programming,简称DP)是一种在计算机科学和数学中广泛应用的算法设计技术,尤其在优化问题中表现卓越。DP背包问题是一个经典的DP应用实例,它涉及到如何在一个有限的背包容量内,选取一组物品以...

    JDP5.20免狗版本

    2.加了一个JDP免狗版的快捷方式 ---其实就是软件及转换器开启的快捷方式 (因为批处理的图标不是那么好看) 软件启动界面如下: 简单的出个路径,主要看下流程: 输出刀路成功 再次郑重声明:本软件仅供...

    算法-动态规划- 线性 DP- 字符串编辑距离(包含源程序).rar

    - 如果不同,我们需要考虑替换、删除和插入三种操作,取它们中的最小值作为dp[i][j]的值,即dp[i][j] = min(dp[i-1][j], dp[i][j-1], dp[i-1][j-1]) + 1。 通过这种方式,我们自底向上地计算出整个二维数组,最后...

    GVF-B-snake算法 贪婪算法 DP算法

    snakes:Active contour model Kass snakes,shapes and gradient vector flow Xu chenyang Using Dynamic Programming for Minimizing the Energy of Active Contours in the Presence of Hard Constraints Amir A....

Global site tag (gtag.js) - Google Analytics