E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
java排序
java排序
算法(一)_冒泡排序、插入排序、选择排序
回顾了下数据结构,写了几个简单的排序,包括冒泡排序,插入排序,选择排序。 冒泡排序,从左到右依次判断相邻的两元素的大小如果左边的比右边的大,则交换位置。这样一次从左到右的遍历就能得到一个为排序队列中的最大值。然后将这个最大值放置到数组的右侧。因为未完成排序的元素越来越少,那么当所有元素都以完成排序时,循环结束。这里需要一个两侧的循环机制,算法耗时:O(N*N)。见代码
u011638883
·
2013-10-20 13:00
java
冒泡排序
插入排序
选择排序
java排序
排序方法: package com.sst; public class SortDemo { /** 排序算法的分类如下: * 1.插入排序(直接插入排序、折半插入排序、希尔排序); * 2.交换排序(冒泡泡排序、快速排序); * 3.选择排序(直接选择排序、堆排序); * 4.归并排序; * 5.基数排序。 * * 关于排序方法的选
sshitaime
·
2013-10-16 15:00
Java排序
Java排序
算法总结(一):插入排序
有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到插入排序法。本文主要介绍的是插入排序的java实现。 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。比较和交换的时间复杂度为O(n^2),算法自适应,对于数据已基本有序的情况,时间复杂度为O(n),算法稳定,开销很低。
pplsunny
·
2013-10-14 19:00
java
插入排序
排序算法
Java排序
之插入排序
插入排序:将一个数据插入到已经排好序的序列中去,插入后保证序列依然有序,这个过程就是插入排序。 现在给定一个未知是否排好序的数组,要将其进行从小到大排序。如果使用插入排序,必须先将该数据分为两部分,一部分是排好序的,一部分是未排序的,并且逐一将未排序的部分插入到已排序的部分中去。 算法步骤描述:  
天上掉下个喜欢编程的榕哥哥
·
2013-10-09 12:00
java
排序
算法
sort
插入
JAVA排序
算法之 选择排序
1.选择排序选择排序的基本思想是遍历数组的过程中,以i代表当前需要排序的序号,则需要在剩余的[i..n-1]中找出其中的最小值,然后将找到的最小值与i指向的值进行交换。因为每一次确定元素的过程中都会有一个选择很大值的子流程,所以称之为选择排序。比如[38,17,16,16,7,31,39,32,2,11]i=0: [2,17,16,16,7,31,39,32,38,11](0th[38]8th[2
zmycoco2
·
2013-09-23 19:00
java 排序算法有多少种
java排序
算法有多少种语言只是把具体的算法实现出来而已。据我了解的排序算法11-13种。排序算法嘛主要就是个思想而已。不同的算法时间复杂度不一样,空间复杂度也不一样,当然执行的效率也不一样。
少年阿宾
·
2013-09-05 19:00
J2EE Comparator、Comparable的比较学习
Java排序
对象:Comparable和Compartor当集合中存储的都是对象时,我们要对其进行排序,就要借助于Comparator或Comparable,以简单的方式实现对象排序或自定义排序。
longx_ok
·
2013-08-28 11:10
java排序
内部排序 选择排序
packagecom.basic.sort; publicclassBasicSort{ publicstaticvoidmain(Stringargvs[]){ inttest[]={3,1,2,5,4,3}; //chooses=newchoose(test); //s.sort(); //s.print(); heaph=newheap(test); h.sort(); h.print
pingnanlee
·
2013-08-16 11:00
java排序
内部排序 交换排序
packagecom.basic.sort; publicclassBasicSort{ publicstaticvoidmain(Stringargvs[]){ inttest[]={3,1,2,5,4,3}; maopaom=newmaopao(test); m.sort(); m.print(); quikq=newquik(test); q.sort(); q.print(); } }
pingnanlee
·
2013-08-15 19:00
JAVA排序
package org.idcn.jse; public class SortAll { /** * 冒泡排序,选择排序,插入排序,希尔(Shell)排序 Java的实现 */ public static void main(String[] args) { int[] i = { 1, 5, 6, 12, 4, 9, 3, 23, 39, 403, 596,
buxin_2008
·
2013-08-01 18:00
java
算法
java排序
java排序
packagecom.test.yjw;publicclassSort{ //冒泡 /** * */ publicstaticvoidbubbleSort(inta[]){ intlen=
java学习
·
2013-06-24 19:00
JAVA排序
算法大全
---------------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流!----------------------一、排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准: (1)执行时间 (2)存储空间 (3)编程工作 对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,
renpingqing
·
2013-06-18 22:00
java
冒泡排序
Java排序
之插入排序
有一个已经有序的数据序列,要求在这个已经牌号的数据序列中插入一个数,但要求插入后此数据序列仍然有序,插入排序法插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的,个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。它是稳定的排序方法,插入算法把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元素除外,而第二部分就只
zmycoco2
·
2013-06-17 09:00
插入排序
java 排序
JAVA排序
算法(非原创) package Sort; class Data { Comparable key; Object value; public Data()
李晓进
·
2013-04-16 21:00
java
算法
常用
java排序
importjava.util.Random; /** *@authoralaahong * */ publicclassJavaSort{ privatestaticvoidswap(int[]array,inti,intj){ inttemp=array[i]; array[i]=array[j]; array[j]=temp; } privatestaticvoidprintData(
alaahong
·
2013-04-16 19:00
Java排序
算法
Java排序
算法 1)分类: 1)插入排序(直接插入排序、希尔排序) 2)交换排序(冒泡排序、快速排序) 3)选择排序(直接选择排序、堆排序) 4)归并排序 5)分配排序(箱排序、基数排序)
ssydxa219
·
2013-04-08 11:00
Java排序
Java排序
(灵活定义排序策略)
项目中的一个实际需求,对于数据库中的信息,不同的查询要求以不同的排序方式来展示; 抽象成下面的问题进行解决; 问题描述: 学校的学生信息,包含以下属性:ID、姓名、所在城市、成绩; 所有学校的学生信息统一存放,但不同学校查询信息时要求按照不同的排序策略显示,如何编写统一的排序方法满足这种需求; 学生信息如下所示(简单起见,保存在一个properties文件中): 记录=ID,姓名
CrystalCoding
·
2013-03-17 21:00
Java排序
Java排序
汇总
importjava.util.Random; /** *排序测试类 * *排序算法的分类如下:1.插入排序(直接插入排序、折半插入排序、希尔排序);2.交换排序(冒泡泡排序、快速排序); *3.选择排序(直接选择排序、堆排序);4.归并排序;5.基数排序。 * *关于排序方法的选择:(1)若n较小(如n≤50),可采用直接插入或直接选择排序。 *当记录规模较小时,直接插入排序较好;否则因为直接
evangel_z
·
2013-03-09 11:00
java
sort
Java排序
算法
1)分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(箱排序、基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。1)选择排序算法的时候1.数据的规模; 2.数据的类型; 3.数据已有的顺序 一般来说,当数据规模较小时,应选择直接插入排序或冒泡
Dracotianlong
·
2013-03-07 13:00
java排序
最主要的是冒泡排序、选择排序、插入排序以及快速排序 1、冒泡排序 冒泡排序是一个比较简单的排序方法。在待排序的数列基本有序的情况下排序速度较快。若要排序的数有n个,则需要n-1轮排序,第j轮排序中,从第一个数开始,相邻两数比较,若不符合所要求的顺序,则交换两者的位置;直到第n+1-j个数为止,第一个数与第二个数比较,第二个数与第三个数比较,......,第n-j个与第n+1-j个比较,
杨大巍
·
2013-02-18 16:04
java
Java排序
算法(五):快速排序
Java排序
算法(五):快速排序快速排序是一个速度非常快的交换排序算法,它的基本思路很简单,从待排的数据序列中任取一个数据(如第一个数据)作为分界值,所有比它小的数据元素放到左边,所有比它大的数据元素放到它的右边
xiaolang85
·
2013-01-16 15:00
Java排序
算法(四):冒泡排序
冒泡排序是计算机的一种排序方法,它的时间复杂度为O(n^2),虽然不及堆排序、快速排序的O(nlogn,底数为2),但是有两个优点:1.“编程复杂度”很低,很容易写出代码;2.具有稳定性,这里的稳定性是指原序列中相同元素的相对顺序仍然保持到排序后的序列,而堆排序、快速排序均不具有稳定性。不过,一路、二路归并排序、不平衡二叉树排序的速度均比冒泡排序快,且具有稳定性,但速度不及堆排序、快速排序。冒泡排
xiaolang85
·
2013-01-16 15:00
Java排序
算法(三):堆排序
Java排序
算法(三):堆排序堆积排序(Heapsort)是指利用堆积树(堆)这种资料结构所设计的一种排序算法,可以利用数组的特点快速定位指定索引的元素。
xiaolang85
·
2013-01-16 15:00
Java排序
算法(二):直接选择排序
直接选择排序的基本操作就是每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完,它需要经过n-1趟比较。算法不稳定,O(1)的额外的空间,比较的时间复杂度为O(n^2),交换的时间复杂度为O(n),并不是自适应的。在大多数情况下都不推荐使用。只有在希望减少交换次数的情况下可以用。基本思想n个记录的文件的直接选择排序可经过n-1趟直接选择
xiaolang85
·
2013-01-16 15:00
Java排序
算法(一):概述
Java排序
算法(一):概述排序是程序开发中一种非常常见的操作,对一组任意的数据元素(或记录)经过排序操作后,就可以把他们变成一组按关键字排序的有序队列。
xiaolang85
·
2013-01-16 15:00
java排序
纯粹个人的笔记,看到hadoop中的quickSort和headSort,发现原来的好东西都付之东流了,在此记一下下 ------------------------------------ 前几种,冒泡,标记都不适合实际使用,或是只用在部分排序上 堆排序实质是将树变为符合规则的大/小顶树,循环从下向上,递归从顶到下进行交换;建堆和排序两个过程都是在进行此操作 冒泡 &nb
blackproof
·
2013-01-09 17:00
java
排序
java排序
纯粹个人的笔记,看到hadoop中的quickSort和headSort,发现原来的好东西都付之东流了,在此记一下下 ------------------------------------ 前几种,冒泡,标记都不适合实际使用,或是只用在部分排序上 堆排序实质是将树变为符合规则的大/小顶树,循环从下向上,递归从顶到下进行交换;建堆和排序两个过程都是在进行此操作 冒泡 &nb
blackproof
·
2013-01-09 17:00
java
排序
java排序
算法
8种排序之间的关系:1,直接插入排序(1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2]个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。(2)实例(3)用java实现[java]viewplaincopyprint?1. packagecom.njue;2. 3. publicclassinsertSort{4
Allen_gang
·
2013-01-09 15:00
java排序
算法
8种排序之间的关系: 1, 直接插入排序 (1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数 也是排好顺序的。如此反复循环,直到全部排好顺序。 (2)实例 (3)用java实现 [java] viewplaincopyprint? 1.packagecom.njue;
Allen_Oscar
·
2013-01-09 15:00
Java排序
Java排序
算法 堆排序
1991年计算机先驱奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德(RobertW.Floyd)和威廉姆斯(J.Williams)在1964年共同发明了著名的堆排序算法(HeapSort)。本文主要介绍堆排序用Java来实现。AD:堆积排序(Heapsort)是指利用堆积树(堆)这种资料结构所设计的一种排序算法,可以利用数组的特点快速定位指定索引的元素。堆排序是不稳定的排序方法,辅助空间为O
wsql
·
2012-12-11 16:00
Java排序
Java排序
算法 归并排序
归并排序(Merge)是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。 归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并
wsql
·
2012-12-11 16:00
Java排序
Java排序
算法 希尔排序
希尔排序(Shell Sort)是插入排序的一种。是针对直接插入排序算法的改进。该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。本文主要介绍希尔排序用Java是怎样实现的。 AD: 希尔排序(缩小增量法) 属于插入类排序,是将整个无序列分割成若干小的子序列分别进行插入排序。希尔排序并不稳定,O(1)的额外空间,时间复杂度为O(N*(logN)^2)。最坏的
wsql
·
2012-12-11 16:00
Java排序
Java排序
算法 插入排序
有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到插入排序法。本文主要介绍的是插入排序的java实现。 AD: 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。比较和交换的时间复杂度为O(n^2),算法自适应,对于数据已基本有序的情况,时间复杂度为O(n),算法
wsql
·
2012-12-11 16:00
Java排序
Java排序
算法 插入排序
有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到插入排序法。本文主要介绍的是插入排序的java实现。AD:插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。比较和交换的时间复杂度为O(n^2),算法自适应,对于数据已基本有序的情况,时间复杂度为O(n),算法稳定,开销很低。算法适合
hjm4702192
·
2012-12-11 16:00
Java排序
算法_选择排序
选择排序的基本操作就是每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。算法不稳定,O(1)的额外的空间,比较的时间复杂度为O(n^2),交换的时间复杂度为O(n),并不是自适应的。在大多数情况下都不推荐使用。只有在希望减少交换次数的情况下可以用。 基本思想 n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果:
wsql
·
2012-12-11 16:00
Java排序
java排序
算法_014快速排序(Quicksort)
packagewzs.sort; //快速排序(Quicksort)是对冒泡排序的一种改进。由C.A.R.Hoare在1962年提出。 //它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小, //然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 publicclassTest {
adam_zs
·
2012-12-06 19:00
java排序
算法_013堆排序(Heapsort)
packagecom.arithmetic; //堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构, //并同时满足堆性质:即子结点的键值或索引总是小于(或者大于)它的父节点。 publicclassTest_wzs013{ privatestaticint[]sort=newint[]{10,3,5,7,9,1,4,2,6,8}; publi
adam_zs
·
2012-12-05 23:00
java
java
java
算法
经典算法
java经典书籍
java经典算法
java排序
算法_012组合排序
packagewzs.sort; //用1、2、3、4、5这五个数字,用java写一个main函数,打印出所有不同的排列,如:51234、41235等。 publicclassTest_wzs012 { publicstaticvoidmain(String[]args) { int[]bits=newint[] { 1,2,3,4,5 }; sort("-",bits); } privat
adam_zs
·
2012-12-05 21:00
算法
算法
java算法
经典算法
java经典算法
需要学习的
java排序
算法_011希尔排序
packagewzs.sort; importjava.util.Arrays; //希尔排序,也称递减增量排序算法,是插入排序的一种高速而稳定的改进版本。 publicclassTest_wzs010 { publicstaticvoidmain(String[]args) { int[]intArray= { 10,3,5,7,9,1,4,2,6,8 }; shellSort(intArr
adam_zs
·
2012-12-05 20:00
java排序
算法_010选择排序
packagecom.arithmetic; importjava.util.Arrays; //选择排序(Selectionsort)是一种简单直观的排序算法。 //它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置, //然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。 //以此类推,直到所有元素均排序完毕。 publicclass
adam_zs
·
2012-12-04 23:00
java排序
算法_009二叉查找树
packagecom.arithmetic; //二叉查找树(BinarySearchTree),或者是一棵空树,或者是具有下列性质的二叉树: //若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; //若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; //它的左、右子树也分别为二叉排序树。 publicclassTest_wzs009{ publicstaticint
adam_zs
·
2012-12-04 23:00
java排序
算法_008地精排序(Gnome Sort)
packagewzs.sort; importjava.util.Arrays; //地精排序(GnomeSort)最简单的排序算法 publicclassTest_wzs004 { publicstaticvoidmain(String[]args) { intintArray[]= { 10,3,5,7,9,1,4,2,6,8 }; gnomesort(intArray.length,in
adam_zs
·
2012-12-04 21:00
算法
算法
java算法
经典算法
java经典算法
java排序
算法_007基数排序
packagewzs.sort; //基数排序 //将所有待比较数值(正整数)统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。 //这样从最低位排序一直到最高位排序完成以后,数列就变成一个有序序列。 importjava.util.ArrayList; importjava.util.Arrays; importjava.util.List; publiccl
adam_zs
·
2012-12-04 21:00
java
java
java
算法
java算法
经典算法
java经典算法
java排序
算法_006归并排序
packagewzs.sort; importjava.util.Arrays; //归并排序(merge),也叫归并算法,指的是将两个已经排序的序列合并成一个序列的操作。归并排序算法依赖归并操作。 publicclassmergingSort { publicstaticvoidmain(String[]args) { inta[]= { 10,3,5,7,9,1,4,2,6,8 }; s
adam_zs
·
2012-12-04 20:00
算法
算法
java算法
经典算法
java经典算法
java排序
算法_005计数排序
packagewzs.sort; importjava.util.Arrays; //计数排序 //找出待排序的数组中最大和最小的元素 //统计数组中每个值为i的元素出现的次数,存入数组C的第i项 //对所有的计数累加(从C中的第一个元素开始,每一项和前一项相加) //反向填充目标数组:将每个元素i放在新数组的第C(i)项,每放一个元素就将C(i)减去1 publicclassCountin
adam_zs
·
2012-12-04 20:00
算法
java算法
经典算法
java经典算法
java排序
算法_004桶排序
packagewzs.sort; importjava.util.Arrays; //桶排序(Bucketsort)或所谓的箱排序,是一个排序算法,工作的原理是将阵列分到有限数量的桶子里。 //每个桶子再个别排序(有可能再使用别的排序算法或是以递回方式继续使用桶排序进行排序)。桶排序是鸽巢排序的一种归纳结果。 //当要被排序的阵列内的数值是均匀分配的时候,桶排序使用线性时间(Θ(n))。但桶排
adam_zs
·
2012-12-04 20:00
java排序
算法_003插入排序
packagewzs.sort; importjava.util.Arrays; //直接插入排序 //基本思想:在要排序的一组数中,假设前面(n-1)[n>=2]个数已经是排 //好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数 //也是排好顺序的。如此反复循环,直到全部排好顺序。 publicclassTest_wzs003 { publicstaticvoidmain(Stri
adam_zs
·
2012-12-04 19:00
java
java
java
算法
算法
java算法
经典算法
java经典算法
java排序
算法_002鸡尾酒排序
packagewzs.sort; importjava.util.Arrays; //鸡尾酒排序,也就是定向冒泡排序,鸡尾酒搅拌排序,搅拌排序(也可以视作选择排序的一种变形), //涟漪排序,来回排序or快乐小时排序,是冒泡排序的一种变形。此算法与冒泡排序的不同处在于排序时是以双向在序列中进行排序。 publicclassTest_wzs002 { publicstaticvoidmain(S
adam_zs
·
2012-12-04 18:00
java
java
java
算法
算法
java算法
经典算法
java经典算法
java排序
算法_001冒泡排序
packagewzs.sort; importjava.util.Arrays; //冒泡排序 //基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数, //自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。 //即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。 //54321 //开始冒泡... //45321 //43521 //4
adam_zs
·
2012-12-04 16:00
java算法
经典算法
java排序算法
java排序
算法_002鸡尾酒排序
packagewzs.sort; importjava.util.Arrays; //鸡尾酒排序,也就是定向冒泡排序,鸡尾酒搅拌排序,搅拌排序(也可以视作选择排序的一种变形), //涟漪排序,来回排序or快乐小时排序,是冒泡排序的一种变形。此算法与冒泡排序的不同处在于排序时是以双向在序列中进行排序。 publicclassTest_wzs002 { publicstaticvoidmain(S
q启明星
·
2012-12-04 00:00
java基础
上一页
7
8
9
10
11
12
13
14
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他