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排序
算法之简单选择排序
在网上搜索了很多的算法,貌似大家说的简单选择排序算法和直接选择排序算法是一回事。 直接选择排序算法的基本思想是:n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果: ①初始状态:无序区为R[1..n],有序区为空。 &n
beijishiqidu
·
2014-06-21 22:00
java
算法
简单选择排序
直接选择排序
Java排序
算法之冒泡排序
阅读更多冒泡排序算法的基本思想是:首先将第n-1个记录的关键字和第n个记录的关键字进行比较,若为“逆序”(即L.r[n].keyarray[j+1]){temp=array[j+1];array[j+1]=array[j];array[j]=temp;}}//System.out.println("-----------------------");print(array);}}publicsta
beijishiqidu
·
2014-06-21 20:00
java
算法
排序
冒泡排序
Java排序
算法之冒泡排序
冒泡排序算法的基本思想是:首先将第n-1个记录的关键字和第n个记录的关键字进行比较,若为“逆序”(即L.r[n].key<L.r[n-1].key),则将两个记录交换之,然后比较第n-2个记录和第n-1个记录的关键字。依次类推,直至第1个记录的关键字和第2个记录的关键字比较过为止。这是第一趟起泡排序,其结果是使得关键字最小的记录被安置到第一个记录的位置上;然后进行第二趟起泡排序,对后面的n-
beijishiqidu
·
2014-06-21 20:00
java
算法
排序
冒泡排序
Java排序
算法之直接插入排序
阅读更多直接插入排序算法的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。把a[i]插入到a[0],a[1],...,a[i-1]之中的具体实施过程为:先把a[i]赋值给变量t,然后将t依次与a[i-1],a[i
beijishiqidu
·
2014-06-21 19:00
java
算法
排序
插入
直接插入排序
Java排序
算法之直接插入排序
直接插入排序算法的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。 把a[i]插入到a[0],a[1],...,a[i-1]之中的具体实施过程为:先把a[i]赋值给变量
beijishiqidu
·
2014-06-21 19:00
java
算法
排序
插入
直接插入排序
Java排序
之Comparable接口和Comparator接口的比较和应用示例
Java排序
之Comparable接口和Comparator接口的比较和应用示例一、其实很简单,单从字面理解就基本明白1.Comparable:“可比较的”,(欲参与比较的对象对应的元素类需实现Comparable
zolalad
·
2014-06-11 15:00
Comparator接口
比较和应用示例
Camparable接口
Java排序
算法
1.1.冒泡排序法 /** * 对Integer数组进行升序排 * * @param dataArr */ public static int[] sort(int[] dataArr) { int iTemp; for (int i = 0; i < dataArr.length; i
liuxiaoling
·
2014-05-20 20:00
Java排序
插入
冒泡
java排序
总结
排序方法最好时间平均时间最坏时间辅助空间稳定性直接插入排序O(n)O(n^2)O(n^2)O(1)稳定希尔排序O(n^1.3)O(1)不稳定直接选择排序O(n^2)O(n^2)O(n^2)O(1)不稳定堆排序O(nlogn)O(nlogn)O(nlogn)O(1)不稳定冒泡排序O(n)O(n^2)O(n^2)O(1)稳定快速排序O(nlogn)O(nlogn)O(n)O(logn)不稳定归并排序O
清风傲剑
·
2014-05-18 14:00
java排序
——基数排序
package jxau.blueDot.lyx; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * * @author lyx *@下午2:15:41 * @TODO: * 基数排序——多关键字排序 * 多关键字排序的思路是将待排数据里德排序关键字拆分成多个排序关键
清风傲剑
·
2014-05-18 14:00
java排序
——桶排序
package jxau.blueDot.lyx; import java.util.ArrayList; import java.util.Iterator; /** * * @author lyx *@下午2:05:52 * @TODO: * 桶排序 */ /** * 桶排序:桶排序的思想是把区间[0,1)划分成n个相同大小的子区间,称为桶, * 然后将n个输入数分布到
清风傲剑
·
2014-05-18 14:00
java排序
——归并排序
package jxau.blueDot.lyx; /** * * @author lyx *@上午10:48:38 * @TODO: * 归并排序 */ /** * 归并排序只要是二路归并排序。 * 基本思想是:设数组a中存放了n个数据元素,初始时将它们看成是n个长度为1的有序 * 数组,然后从第一个子数组开始,把相邻子数组两两合并,得到n/2的整数上界个长度为2 *
清风傲剑
·
2014-05-18 11:00
java排序
——插入排序
package jxau.blueDot.lyx; /** * * @author lyx *@下午6:42:21 * @TODO: * 希尔排序 */ /** * * 把待排序的数据元素分成若干个小组,对同一小组内的数据元素用直接插入法排序, * 小组的个数逐次缩小,当完成了所有数据元素都在一个组内排序完成后结束。希尔排序 * 又被称为 缩小增量排序。 * 希尔排序
清风傲剑
·
2014-05-17 18:00
java排序
——插入排序
package jxau.lyx.sort; /** * * @author: liyixiang * @data:2014-9-30 * @题目大意: * 插入排序 * @主要思路: * @时间复杂度: * 最好O(n) 平均O(n^2) 最差O(n^2) * 在最佳情况下,输入数组是已经排好序的;在最坏情况下,输入数组是按逆序排序的。 * @空间复杂度: * O(1)
清风傲剑
·
2014-05-17 16:00
java排序
——交换排序
package audition.lyx.sort; /** * * @author: liyixiang * @data:2014-9-25 * @题目大意: * 快速排序 * @主要思路: * 分治法 选取一个元素作为中间值,与其他元素比较,如果小于中间元素,则放在中间元素 * 左边,否则放在中间元素右边,之后分别为左边,右边元素排序,排完序合并两段元素即可。 * @时间复
清风傲剑
·
2014-05-16 21:00
java排序
——交换排序
package audition.lyx.sort; /** * * @author: liyixiang * @data:2014-9-25 * @题目大意: * 冒泡排序 * @主要思路: * 像泡沫一样,大的放在上面,小的在下面 * 交换排序的一种 * @时间复杂度: * O(n^2) * @空间复杂度: * O(1) */ public class Bubbl
清风傲剑
·
2014-05-16 20:00
java排序
——选择排序
package jxau.blueDot.lyx; /** * * @author lyx *@下午7:59:36 * @TODO: * 堆排序算法 */ /** * 堆定义: * 堆是有如下特点的二叉树: * (1)完全二叉树 * (2)常常用一个数组实现 * (3)堆中的每一个节点都满足堆的条件——每一个节点的关键字都大于(或等于) * 这个节点的子节点的
清风傲剑
·
2014-05-12 22:00
java排序
——选择排序
package jxau.lyx.sort; /** * * @author: liyixiang * @data:2014-9-30 * @题目大意: * 选择排序 * @主要思路: * 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的 * 数列的最后,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。 * * 对比数组中前一个元素跟
清风傲剑
·
2014-05-12 18:00
java排序
Java排序
算法:概述 排序是程序开发中一种非常常见的操作,对一组任意的数据元素(或记录)经过排序操作后,可以把它们变成一组按关键字排序的有序队列。
清风傲剑
·
2014-05-11 16:00
Java排序
方法总结
题目:用java编写一段程序采用选择排序法对数组array={25,15,42,16,12,36}进行由小到大排序。1、选择排序法该排序法的思想是每次从当前元素开始往后查找最小元素,将最小与当前元素进行位置互换。选择排序和冒泡排序相比优势在于交换次数减少。//时间复杂度n(n-1)/2,即O(n^2) publicstaticvoidselectSort(int[]array){ intk,tmp
dotnetstudio
·
2014-05-03 12:00
排序
冒泡排序
选择排序
快速排序
如何用
Java排序
在阅读开源Java项目源代码过程中,我发现Java开发者经常使用两种开发方式排序:一种是使用Collections和Arrays类的sort方法,另一种是使用可排序的数据结构。使用sort()方法//Collections.sort Listlist=newArrayList(); Collections.sort(list,newComparator(){ publicintcompare(Ob
liaoqianwen123
·
2014-04-27 10:00
Java排序
算法优化--快速排序【温故而知新】
/** * *@authorFly */ publicclassQuickSort{ publicvoidquicksort(int[]a,intf,inte){ intleft=f,right=e; if(f
Fly_Sky520
·
2014-04-21 14:00
Java排序
算法优化--Shell排序【温故而知新】
/** * *@authorFly */ publicclassShellSort{ publicint[]shellsort(int[]a){ intsize=a.length; for(intstep=size/2;step>0;step/=2){ for(inti=0;ii&&a[k-step]>temp;k-=step){ a[k]=a[k-step]; } a[k]=temp; } }
Fly_Sky520
·
2014-04-21 11:00
Java排序
算法优化--插入排序【温故而知新】
/** * *@authorFly */ publicclassInsertSort{ publicint[]insertSort(int[]a){ intsize=a.length; intj; for(inti=1;ij;k--){ a[k]=a[k-1]; } a[j]=temp; } returna; } publicint[]insertSort1(int[]a){ intsize=
Fly_Sky520
·
2014-04-19 12:00
Java排序
算法优化--冒泡排序【温故而知新】
对于冒泡排序的改进,感谢MoreWindows(微软最有价值专家),给我提供这么好的思路,我只是写了一个完整的Java版本。/** * *@authorFly */ publicclassBubbleSort{ //不加思考写的交换排序 //不是冒泡排序,比较的不是相邻的元素 publicint[]bubbleSort(int[]a){ intsize=a.length; for(inti=0;
Fly_Sky520
·
2014-04-16 14:00
Java排序
算法2:选择排序
一.思想:走访数列n-1遍,第一趟从num[0]---num[n]中选取最小(最大)的数,与num[0]交换。第二趟从num[1]---num[n]中选择最小(最大)的数,与num[1]交换......依次类推。二.例子:比如5,4,2,3,第一趟比较的过程为:1.找到num[0]---num[3]的最小的数为2,与num[0]交换,交换后的序列为:2,4,5,3.第二趟比较过程为:1.找到num
Sauron1
·
2014-04-13 20:19
算法
排序算法
java
选择排序
Java排序
算法实现
温故而知新,可以为师矣!经常温故旧的知识,每次都有新的体会,这种感觉真的很好。对于排序算法,面试中经常会被问道,因此我在这里做一个简单的小结,方便以后复习。在引入排序算法之前,先介绍一下排序会用到的一些基础:交换数组中的两个元素:用一个中间变量来存放需要交换的数。以下代码: /** *交换数组中的两个元素 *@paramarrs数组 *@parami下标i *@paramj小标j */
吖龙Sam
·
2014-04-04 17:00
java
算法
面试
Java排序
算法实现
阅读更多温故而知新,可以为师矣!经常温故旧的知识,每次都有新的体会,这种感觉真的很好。对于排序算法,面试中经常会被问道,因此我在这里做一个简单的小结,方便以后复习。在引入排序算法之前,先介绍一下排序会用到的一些基础:交换数组中的两个元素:用一个中间变量来存放需要交换的数。以下代码:/***交换数组中的两个元素*@paramarrs数组*@parami下标i*@paramj小标j*/publicst
吖龙Sam
·
2014-04-04 17:00
java
算法
面试
导航树
java排序
算法
importjava.io.Serializable; /** *菜单bean *@author雾非雾 */ publicclassMenuimplementsSerializable{ privatestaticfinallongserialVersionUID=-2551261287753455586L; publicIntegerid; publicIntegerparentId;/
hfhwfw
·
2014-03-16 23:00
Java排序
JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。 快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。 冒泡法是运用两次for循环来遍历数组进行比较 public static int[] bubbleSort(int[] args){//冒泡排序算法 for(int i=0;
Tristan_S
·
2014-03-06 16:00
Java排序
一个简单的
java排序
BitSet bitset = new BitSet(); int[] arrs = new int[]{3,4,7,34,90,1,3,2,45,23,23,11,2,20,30,50,39,1,123,12,400,401,230,33,6}; for (int i = 0; i < arrs.length; i++) { bitset.set(arrs[i]); } &nbs
lishidi
·
2014-02-25 15:00
Java排序
java排序
去重示例分享
复制代码代码如下:packageaction;importjava.util.Arrays;importjava.util.TreeSet;publicclasstest{/***@paramargs*/publicstaticvoidmain(String[]args){Stringstrs="ZZZBBBAAAOOOZZZAAAZZZBBBAAAZZZAAAVVVOOOCCCDDDCCCCCC
·
2014-02-24 09:44
Java排序
算法总结
1、冒泡排序冒泡排序是排序算法中最基本的一种排序方法,该方法逐次比较两个相邻数据的大小并交换位置来完成对数据排序,每次比较的结果都找出了这次比较中数据的最大项,因为是逐次比较,所以效率是O(N^2)的。[java] viewplaincopypublic void bubbleSort() { int out,in; for(out=index-1; out>1
IT冲浪者
·
2014-02-06 00:00
java
java排序
算法(一)_冒泡排序、插入排序、选择排序
回顾了下数据结构,写了几个简单的排序,包括冒泡排序,插入排序,选择排序。 冒泡排序,从左到右依次判断相邻的两元素的大小如果左边的比右边的大,则交换位置。这样一次从左到右的遍历就能得到一个为排序队列中的最大值。然后将这个最大值放置到数组的右侧。因为未完成排序的元素越来越少,那么当所有元素都以完成排序时,循环结束。这里需要一个两侧的循环机制,算法耗时:O(N*N)。见代码
李凯
·
2014-01-25 09:00
java
冒泡排序
选择排序
插入排序
Java排序
实现的心得分享
1.概述排序和查找是程序设计里的两类非常基本的问题,而现在也存在很多经典的算法用于解决这两类问题,本文主要对java中排序算法实现进行一个基本的探讨,希望能够起到抛砖引玉的作用。在此之前,首先问各位几个问题:你能写出一个正确的快排吗?快排在什么情况下真正的快?你的快排足够快吗?还可以进一步优化吗?带着这些问题,我们来看看jre7中快排是如何实现的吧。Jre7中排序的实现类是DualPivotQui
·
2014-01-10 15:40
Java排序
实现的心得
1.概述排序和查找是程序设计里的两类非常基本的问题,而现在也存在很多经典的算法用于解决这两类问题,本文主要对java中排序算法实现进行一个基本的探讨,希望能够起到抛砖引玉的作用。在此之前,首先问各位几个问题:你能写出一个正确的快排吗?快排在什么情况下真正的快?你的快排足够快吗?还可以进一步优化吗?带着这些问题,我们来看看jre7中快排是如何实现的吧。Jre7中排序的实现类是DualPivotQui
修远1990
·
2014-01-08 16:41
编程语言
Java
排序
jre
jdk
java排序
--平衡二叉树
概念:平衡二叉树(BalancedBinaryTree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。构造与调整方法平衡二叉树的常用算法有红黑树、AVL、Treap、伸展树等。最小二叉平衡树的节点的公式如下F(n)=F(n-1)+F(n-2)+1这个类似于一个递归的数列,可以参考Fibonacci数
u011659172
·
2014-01-04 00:00
java
平衡二叉树
java排序
--归并排序
1.概念:归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个有序的子序列,再把有序的子序列合并为整体有序序列。归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(DivideandConquer)的一个非常典型的应用。值得注意的是归并排序是一种稳定的排序方法。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段
u011659172
·
2014-01-04 00:00
java
归并排序
java排序
--折半查找
1.概念:折半查找,也称二分查找算法、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步骤数组为空,则代表找不到。这种搜索算法每一次比较都使搜索范围缩小一半。2.代码一:/** * * @
u011659172
·
2014-01-03 23:00
java
折半查找
java排序
----鸡尾酒排序
1.概念:鸡尾酒排序也就是定向冒泡排序,鸡尾酒搅拌排序,搅拌排序(也可以视作选择排序的一种变形),涟漪排序,来回排序or快乐小时排序,是冒泡排序的一种变形。此演算法与冒泡排序的不同处在于排序时是以双向在序列中进行排序。2.原理:使用鸡尾酒排序为一列数字进行排序的过程.数组中的数字本是无规律的排放,先找到最小的数字,把他放到第一位,然后找到最大的数字放到最后一位。然后再找到第二小的数字放到第二位,再
u011659172
·
2014-01-03 23:00
java
鸡尾酒排序
java排序
算法总结
1. 直接插入排序 基本思想: 在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数 也是排好顺序的。如此反复循环,直到全部排好顺序。 /** * 直接插入排序 * * @param data */ public static void insert_sort(int[] data) {
hai19850514
·
2013-12-14 20:00
Java排序
JAVA排序
汇总
package com.bobo.paixu; import java.util.Random; /** * 排序测试类 * 排序算法的分类如下: * 1.插入排序(直接插入排序、折半插入排序、希尔排序); * 2.交换排序(冒泡泡排序、快速排序); * 3.选择排序(直接选择排序、堆排序); * 4.归并排序; * 5.基数排序。 * 关于排序方法的选
colbybobo
·
2013-12-01 18:00
Java排序
java排序
练习:输入三个学生的姓名和他们的三个评分,去掉最高分和最低分
/* *功能:输入三个学生的姓名和他们的三个评分,去掉最高分和最低分,得到各自的最后分数,再找出得分最高的学生和分数 */ packagecom.xiao; importjava.io.*; classtest2{ publicstaticvoidmain(String[]args){ try{ intcount=3; //保存分数 floatfenshu[]=newfloat[count]; /
xiaohongyangok
·
2013-11-19 17:29
java
import
package
public
姓名
Java排序
算法总结(六):堆排序
Java排序
算法总结(六):堆排序 1991年计算机先驱奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德(RobertW.Floyd)和威廉姆斯(J.Williams)在1964年共同发明了著名的堆排序算法
pplsunny
·
2013-11-16 21:00
java
算法
排序算法
Java排序
算法总结(五):归并排序
Java排序
算法总结(五):归并排序 归并操作(merge),也叫归并算法,指的是将两个已经排序的序列合并成一个序列的操作。
pplsunny
·
2013-11-16 21:00
java
算法
归并排序
排序算法
Java排序
算法总结(四):希尔排序
Java排序
算法总结(四):希尔排序 前言:希尔排序(ShellSort)是插入排序的一种。是针对直接插入排序算法的改进。
pplsunny
·
2013-11-16 21:00
java
算法
希尔排序
排序算法
Java排序
算法总结(三):冒泡排序
Java排序
算法总结(三):冒泡排序前言:冒泡排序(BubbleSort)就是依次比较相邻的两个数,将小数放在前面,大数放在后面。
pplsunny
·
2013-11-16 21:00
java
算法
排序算法
十种
JAVA排序
算法实例
排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准:(1)执行时间(2)存储空间(3)编程工作对于数据量较小的情形,(1)(2)差别不大,主要考虑(3);而对于数据量大的,(1)为首要。一、冒泡(Bubble)排序复制代码代码如下:voidBubbleSortArray(){for(inti=1;ia[j+1])//比较交换相邻元素{intte
·
2013-11-14 15:12
Java排序
算法总结(二):选择排序
选择排序的基本操作就是每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。算法不稳定,O(1)的额外的空间,比较的时间复杂度为O(n^2),交换的时间复杂度为O(n),并不是自适应的。在大多数情况下都不推荐使用。只有在希望减少交换次数的情况下可以用。 基本思想 n个记录的文件的直接选择排序可经过n-1趟直接选择
pplsunny
·
2013-11-09 20:00
java
排序算法
Java排序
算法
//插入排序: package org.rut.util.algorithm.support; import org.rut.util.algorithm.SortUtil; /** * @author treeroot * @since 2006-2-2 * @version 1.0 */ public class InsertSort implements So
nmhym0114
·
2013-11-07 10:00
Java排序
Java排序
之冒泡排序
冒泡排序:冒泡排序其实就是把小的元素往前调(把大的元素往后调),从后面往前(从前往后)依次对相 邻的俩个元素比较,发现顺序错误就把他们交换过来,直到没有再需要交换,就排序完成。 算法步骤描述: 1、从后往前比较相邻的元素。如果前面的比后面的大,就交换他们两个 2、对每一对相邻元素作同样的工作之后,这时候第一个元素就是最小的数了 3、对所有的元素(假定n个)重复以上的步骤n-1次(
天上掉下个喜欢编程的榕哥哥
·
2013-10-30 00:00
java
排序
算法
冒泡排序
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
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
其他