- 浏览: 3557527 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (1491)
- Hibernate (28)
- spring (37)
- struts2 (19)
- jsp (12)
- servlet (2)
- mysql (24)
- tomcat (3)
- weblogic (1)
- ajax (36)
- jquery (47)
- html (43)
- JS (32)
- ibatis (0)
- DWR (3)
- EXTJS (43)
- Linux (15)
- Maven (3)
- python (8)
- 其他 (8)
- JAVASE (6)
- java javase string (0)
- JAVA 语法 (3)
- juddiv3 (15)
- Mule (1)
- jquery easyui (2)
- mule esb (1)
- java (644)
- log4j (4)
- weka (12)
- android (257)
- web services (4)
- PHP (1)
- 算法 (18)
- 数据结构 算法 (7)
- 数据挖掘 (4)
- 期刊 (6)
- 面试 (5)
- C++ (1)
- 论文 (10)
- 工作 (1)
- 数据结构 (6)
- JAVA配置 (1)
- JAVA垃圾回收 (2)
- SVM (13)
- web st (1)
- jvm (7)
- weka libsvm (1)
- weka屈伟 (1)
- job (2)
- 排序 算法 面试 (3)
- spss (2)
- 搜索引擎 (6)
- java 爬虫 (6)
- 分布式 (1)
- data ming (1)
- eclipse (6)
- 正则表达式 (1)
- 分词器 (2)
- 张孝祥 (1)
- solr (3)
- nutch (1)
- 爬虫 (4)
- lucene (3)
- 狗日的腾讯 (1)
- 我的收藏网址 (13)
- 网络 (1)
- java 数据结构 (22)
- ACM (7)
- jboss (0)
- 大纸 (10)
- maven2 (0)
- elipse (0)
- SVN使用 (2)
- office (1)
- .net (14)
- extjs4 (2)
- zhaopin (0)
- C (2)
- spring mvc (5)
- JPA (9)
- iphone (3)
- css (3)
- 前端框架 (2)
- jui (1)
- dwz (1)
- joomla (1)
- im (1)
- web (2)
- 1 (0)
- 移动UI (1)
- java (1)
- jsoup (1)
- 管理模板 (2)
- javajava (1)
- kali (7)
- 单片机 (1)
- 嵌入式 (1)
- mybatis (2)
- layui (7)
- asp (12)
- asp.net (1)
- sql (1)
- c# (4)
- andorid (1)
- 地价 (1)
- yihuo (1)
- oracle (1)
最新评论
-
endual:
https://blog.csdn.net/chenxbxh2 ...
IE6 bug -
ice86rain:
你好,ES跑起来了吗?我的在tomcat启动时卡在这里Hibe ...
ES架构技术介绍 -
TopLongMan:
...
java public ,protect,friendly,private的方法权限(转) -
贝塔ZQ:
java实现操作word中的表格内容,用插件实现的话,可以试试 ...
java 读取 doc poi读取word中的表格(转) -
ysj570440569:
Maven多模块spring + springMVC + JP ...
Spring+SpringMVC+JPA
package endual.xier.writeagain; public class Darray { private long[] theArray ; private int nElems ; public Darray(int max) {//构造数组 this.theArray = new long[max] ; this.nElems = 0 ; } public void insert(long value) { //插入数据 this.theArray[this.nElems] = value ; this.nElems++ ; } public void display() { //显示数组 for (long value :this.theArray) { System.out.println(value); } } public void mergeSort() { long[] workSpace = new long[this.nElems] ; recMergeSort(workSpace, 0, this.nElems-1) ; } private void recMergeSort(long[] workSpace, int lowerBound, int upperBound) { if (lowerBound == upperBound) { return ; } else { int mid = (lowerBound + upperBound) / 2 ; //取到一个枢纽的值 recMergeSort(workSpace, lowerBound, mid) ; recMergeSort(workSpace, mid+1, upperBound) ; //排列他们 merge(workSpace, lowerBound, mid+1, upperBound) ; }//end else } private void merge(long[] workSpace, int lowPtr, //用这个数组将数组的两半归并成一个有序的数组。 int highPtr, int upperBound) { // TODO Auto-generated method stub int j = 0 ; int lowerBound = lowPtr ; int mid = highPtr - 1 ; int n = upperBound - lowerBound - 1 ; while (lowPtr <= mid && highPtr <= upperBound) { //值到两个数组的其中一个用完了 if (this.theArray[lowPtr] < this.theArray[highPtr]) { workSpace[j] = this.theArray[lowPtr] ; //将小的那个放入到工作的空间中去 j++ ; //工作的空间加1 lowPtr++ ; //最小的那个也加一 }else if (this.theArray[lowPtr] >= this.theArray[highPtr]) { workSpace[j++] = this.theArray[highPtr++] ; } } // end while1 while (lowPtr <= mid) { workSpace[j++] = this.theArray[lowPtr++] ; //直接复制进去 这两wihlt值能只执行一个的 } while (highPtr <= upperBound) { workSpace[j++] = this.theArray[highPtr++] ;//直接复制进去 这两wihlt值能只执行一个的 } for (j = 0; j < n; j++) { this.theArray[lowerBound+j] = workSpace[j] ; //进行复制 } } //end }
package endual.xier.writeagain; public class MergeSortApp { public static void main(String[] args) { Darray da = new Darray(100) ; for (int i = 0; i < 100; i++) { long value = (long) (Math.random() * 10000) ; da.insert(value) ; } da.display() ; System.out.println("-----------------------------"); da.mergeSort() ; da.display() ; } }
---------------------
我昏了,这个居然弄不出来哪里有错误啊,天煞的。
发表评论
-
递归思想 汉诺塔的问题
2012-02-09 10:46 1656package endual; public cl ... -
带权图 最短路径 代码自己写
2012-02-09 10:46 3185最短路径问题 可 ... -
带权图的最小生成树 (代码自己写)
2012-02-08 16:02 46591.大理论的一些资料 ... -
数据结构学习的在线好网址
2012-02-07 16:20 1565http://sjjg.js.zwu.edu.cn/SFXX/ ... -
有向无环图 拓扑排序
2012-02-07 15:53 3462package endual.tuopupaixu; ... -
java 图的最小生成树问题 (代码自己写)
2012-02-07 13:51 2791最小生成树是基于无无向图,并且是没有权值的图的。它的实现可以用 ... -
java 图 代码自己写
2012-02-07 13:07 1789图的建立也是基于数组的,但是遍历的话是基于链表或者是矩阵的 ... -
堆 (自己写)
2012-02-06 13:32 1460堆也是基于数组的哦,所以在创建的时候,请先要考虑好数组的大小了 ... -
哈希表的一些概念 代码(自己写)
2012-02-05 18:44 2184首先,我们要明确一点 ... -
红黑树的一些概念
2012-02-05 14:43 2013普通的二叉树作为数 ... -
两个正整数相加
2012-02-05 09:48 1872import java.util.Scanner; i ... -
二叉树代码
2012-02-05 09:51 1724package endual; /** * 树 ... -
java 二叉树
2012-02-04 14:17 1576为什么要用二叉树 通常我们去实现数据结构有两种方式,一 ... -
桶排序(代码自己写)
2012-02-04 13:24 2036简单来说,就是把数据分组,放在一个个的桶中,然后对每个桶 ... -
各类排序算法
2012-02-04 13:19 1482隐藏▲ 查 · 论 -
快速排序算法(自己写)
2012-02-04 12:58 1767快速排序算法的伪代码。 package endual; ... -
java 希尔排序算法(自己写)
2012-02-04 10:26 1871希尔排序算法是对插入算法的应用吧,就是多次的使用了插入算法多排 ... -
递归 字符串的全排列
2012-02-03 15:29 2459package endual; public class ... -
java递归的一个问题
2012-02-03 13:56 1869据说比达格斯理论家,又称一群在必达格斯领导下工作的古希腊数学家 ... -
java 实现链表(自己写的)
2012-02-03 11:03 1660今天用java写了下的链表, 还是有点糊涂的。这和C语言写的链 ...
相关推荐
Java实现归并排序 Java 实现归并排序是一种常用的排序算法,通过分治策略将原始数组分成小组,然后对每个小组进行排序,最后将排序好的小组合并成一个有序数组。下面是 Java 实现归并排序的知识点总结: 基本思想 ...
归并排序:如何使用Java实现归并排序算法,程序详细解读; 归并排序:如何使用Java实现归并排序算法,程序详细解读; 归并排序:如何使用Java实现归并排序算法,程序详细解读; 归并排序:如何使用Java实现归并排序...
在Java中实现归并排序,我们可以创建一个名为`MergeSort`的类来封装整个过程。归并排序的基本思想是将待排序的序列分成两个或更多的子序列,对每个子序列分别进行排序,然后将排序后的子序列合并成一个有序序列。这...
在Java中实现归并排序,主要涉及到以下几个关键步骤: 1. **分割(Divide)**:将原始数组分为两个相等(或接近相等)的子数组。这通常通过取数组中间索引来完成。例如,如果数组长度为`n`,则可以将前`n/2`个元素...
归并排序是一种经典的排序算法,基于分治策略。在Java中实现归并排序,我们可以将一个大数组分成两个...通过深入理解和实践`MergeSort.java`文件,你可以掌握归并排序的基本原理和实现技巧,进一步提升自己的编程能力。
在Java中实现归并排序,我们可以分别实现递归版和非递归版,这两种方法各有其特点和适用场景。 ### 1. 分治策略 归并排序的核心是分治法,它将一个大数组分为两个相等或接近相等的子数组,分别对这两个子数组进行...
Java归并外排序是一种在处理大量数据时,利用外部存储器进行排序的算法。当内存不足以容纳所有数据时,就需要借助硬盘等外部存储设备。这种排序算法通常由三个主要步骤组成:分块、内部排序和合并。 1. 分块:首先...
本篇将重点讲解如何利用ArrayList实现快速排序(Quick Sort)、归并排序(Merge Sort)和堆排序(Heap Sort)这三种经典的排序算法,并探讨它们的原理、优缺点以及在实际应用中的选择。 **快速排序(Quick Sort)**...
这里我们将深入探讨两种常见的排序算法:插入排序(Insertion Sort)和归并排序(Merge Sort),它们都是在Java环境下实现的。 **插入排序**是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序...
在这个场景中,我们讨论的焦点是使用 Java Swing 来实现一个排序算法的动画展示,特别是归并排序。归并排序是一种高效的、稳定的排序算法,它的基本思想是将大问题分解为小问题来解决,通过递归地将两个或更多有序数...
利用分治法思想实现归并排序,Java语言描述。
归并排序 在排序前,先建好一个长度等于原数组长度的临时数组
JAVA 归并排序算法 JAVA 归并排序算法是利用 "归并 "技术来进行排序的。归并是指将若干个已排序的子文件合并成一个有序的文件。该算法有两种实现方法:自底向上和自顶向下。 自底向上的方法 自底向上的基本思想是...
该资源包括实用练习,让读者可以练习在Java中实现归并排序,并提供解决方案以帮助读者检查自己的工作并深入理解所学内容。 无论您是Java编程的初学者还是有经验的程序员,该资源都将为您提供有价值的指导和支持,...
这个“归并排序单步演示软件”特别适合Java学习者,因为Java是实现归并排序的常见编程语言。在Java中,可以使用内置的数据结构如ArrayList或者数组来存储和操作数据,同时利用递归函数实现算法逻辑。 标签中的...
Java实现外部归并排序的过程包括以下几个关键步骤: 1. **划分阶段**: - 将原始数据分割成多个小文件,每个文件包含可以一次性加载到内存中的数据量。这通常通过创建一系列的子序列(也称为块或桶)完成。 - 对...
它将数组分为两半,分别对左右两半进行归并排序,然后再合并这两个已排序的子数组。Java中,可以使用两个辅助数组来辅助排序和合并的过程。 6. **希尔排序(Shell Sort)**: 希尔排序是插入排序的一种优化版本,...
JAVA排序大全 冒泡 快速 选择 归并排序
`mergesort.java`文件应该包含了归并排序的分治过程。 4. **堆排序**: 堆排序是由Napier和Rabin在1962年提出,它利用了堆这种数据结构。堆是一个近似完全二叉树的结构,并同时满足堆的性质:即子节点的键值或索引...