开发者社区> 问答> 正文

java中的算法,一共有多少种,哪几种,怎么分类。

java中的算法,一共有多少种,哪几种,怎么分类。

展开
收起
知与谁同 2018-07-22 20:03:31 3951 0
3 条回答
写回答
取消 提交回答
  • 算法只是解决问题的一种方法,你需要解决什么问题就用到什么算法,没有种类之分。你对算法的理解有误吧。
    2019-07-17 22:49:47
    赞同 展开评论 打赏
  • 随便出一个题目就是一个算法

    算法可以简单地理解成是一种思想的实现

    你要说的是排序算法吧
    http://www.oschina.net/code/snippet_120166_6102
    排序算法可以看看这个
    2019-07-17 22:49:47
    赞同 展开评论 打赏
  • 就好比问,汉语中常用写作方法有多少种,怎么分类。

    算法按用途分,体现设计目的、有什么特点
    算法按实现方式分,有递归、迭代、平行、序列、过程、确定、不确定等等
    算法按设计范型分,有分治、动态、贪心、线性、图论、简化等等

    作为图灵完备的语言,理论上”Java语言“可以实现所有算法。
    “Java的标准库'中用了一些常用数据结构和相关算法.

    像apache common这样的java库中又提供了一些通用的算法

    -------------------------

    排序是程序开发中一种非常常见的操作,对一组任意的数据元素(或记录)经过排序操作后,就可以把他们变成一组按关键字排序的有序队列。
    对一个排序算法来说,一般从下面3个方面来衡量算法的优劣:

    时间复杂度:它主要是分析关键字的比较次数和记录的移动次数。
    空间复杂度:分析排序算法中需要多少辅助内存。
    稳定性:若两个记录A和B的关键字值相等,但是排序后A,B的先后次序保持不变,则称这种排序算法是稳定的;反之,就是不稳定的。

    就现有的排序算法来看,排序大致可分为内部排序和外部排序。如果整个排序过程不需要借助外部存储器(如磁盘等),所有排序操作都是在内存中完成,这种排序就被称为内部排序。
    如果参与排序的数据元素非常多,数据量非常大,计算无法把整个排序过程放在内存中完成,必须借助于外部存储器(如磁盘),这种排序就被称为外部排序。
    外部排序最常用算噶是多路归并排序,即将原文件分解称多个能够一次性装入内存的部分,分别把每一部分调入内存完成排序,接下来再对多个有序的子文件进行归并排序。
    就常用的内部排序算法来说,可以分为以下几类:

    选择排序(直接选择排序,堆排序)
    交换排序(冒泡排序,快速排序)
    插入排序(直接插入排序,折半插入排序,Shell排序)
    归并排序
    桶式排序
    基数排序

    2019-07-17 22:49:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载