自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 堆排序

package q; import java.util.Arrays; public class c { public static void main(String[] args) { int A[]= {38,6,34,11,81,18,61,47,99}; sort(A); System.out.println(Arrays.toString(A)); } stat...

2020-02-10 18:35:46 104

原创 java排序之基数排序

基数排序 package q; import java.util.Arrays; public class c { private static void radixSort(int[] array,int d) { int n=1;//代表位数对应的数:1,10,100... int k=0;//保存每一位排序后的结果用于下一位的排序输入 int length=arra...

2020-02-06 15:11:35 137

原创 java贪心算法

java贪心算法 基本概念: 所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择,贪心策略使用的前提是局部最优能导致全局最优。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态...

2019-10-14 17:28:47 563

原创 java计数排序

java计数排序 计数排序原理很简单,且不同于之前的排序是两个数之间比较大小从而排序的情况,它是一种非比较排序,不过它适应于数多但范围小的情况 下面举个例子: 对数组 arr{7,4,2,9,7,2,6}进行升序排序 首先创建一个与arr长度相同的vvv数组用来存放排序过的数组,之后根据arr数组中元素范围为0–10.再创建一个长度为10的数组reuslt 接着从数组第一个元素为7,把他作为下标...

2019-09-25 16:02:55 294

原创 java堆排序

java堆排序 堆是一种重要的数据结构,为一棵完全二叉树, 底层如果用数组存储数据的话,假设某个元素为序号为i(Java数组从0开始,i为0到n-1),如果它有左子树,那么左子树的位置是2i+1,如果有右子树,右子树的位置是2i+2,如果有父节点,父节点的位置是(n-1)/2取整。分为最大堆和最小堆,最大堆的任意子树根节点不小于任意子结点,最小堆的根节点不大于任意子结点。所谓堆排序就是利用堆这种数...

2019-09-25 00:17:46 339

原创 java快速排序

java快速排序 快速排序的原理:选择一个关键值作为基准值。比基准值小的都在左边序列(一般是无序的),比基准值大的都在右边(一般是无序的)。一般选择序列的第一个元素。 一次循环:从后往前比较,用基准值和最后一个值比较,如果比基准值小的交换位置,如果没有继续比较下一个,直到找到第一个比基准值小的值才交换。找到这个值之后,又从前往后开始比较,如果有比基准值大的,交换位置,如果没有继续比较下一个,直到找...

2019-09-20 18:38:10 2663 2

原创 java归并法排序

java归并法排序 归并法排序比较特殊,是针对一个数组(其中包含两个已经排序过的序列)而进行排序,首先开辟一个空间(定义一个新的数组),把排序好的这个数组放进去,其次是针对两个数组中的序列进行依依比较,将符合条件的值放入刚刚新开辟的空间中,循环上述过程,直到完成排序! 简单举一个例子:{1,3,5, 2,4,6,8,10}进行升序排序,其中包含两个序列{1,3,5}和{2,4,...

2019-09-18 19:51:05 199

原创 java排序之希尔法

java排序之希尔法 在掌握了插入法排序之后,我们来看看希尔排序法,希尔排序法是插入法的升级版,整体逻辑与插入法一样.我认为,希尔法就是若干个不同元素组成的不同组分别使用插入法组合到一起的一种逻辑方法。主要通过分组来实现,下面一个例子说明: 对{7,5,4,6,3}进行升序排序 首先进行分组,求得分组数d=数组长度/2,则{7, 5, 4, 6,3}红色元素为一组,黑色元素为另一组,下...

2019-09-18 16:13:26 342

原创 java插入法排序

java插入法排序 原理:将所排序数组分为两块,一个是有序数组(排序好的数组,通常第一次是数组的第一个元素),另一个是待插入数组(剩余元素),首先将待插入数组的第一个元素赋给一个任意变量,然后使待插入数组的元素依次和有序数组的元素进行比较,若符合条件,则使有序数组的元素向后移动一位,则原来的位置就空了,再把待插入数组的那个元素放到有序数组的位置,重复上述过程,待插入数组元素不断减小,有序数组元素不...

2019-09-04 09:18:21 343

原创 java选择法排序

java选择法排序 选择法排序同冒泡法一样都较容易,但其原理稍有不同,冒泡法主要是通过相邻元素的大小比较而排序,而我们今天学习的选择法排序是确定一个元素之后和其他所有元素进行比较。下面我们简单看下一吧! 原理:令一个元素的下标值为min(通常是第一个元素),然后把这个元素和其他所有元素依次进行比较,如果有元素比下标为min的值小,就使min等于较小的值的下标,第一轮下来之后,min对应的下标值一定...

2019-09-03 15:15:53 378 1

原创 java冒泡法快速理解

java冒泡法快速理解 在算法十大排序中,冒泡法是其中最为简单最易理解的一种方法,下面带大家一起看一下 冒泡法的原理:顾名思义冒泡法就是像泡泡一样的冒出来,不过这里的泡泡是你所排序的相对的较大值或者较小值,通过相邻的数值比较把较大值或者较小值冒出来。 下面一个例子简单说明: 一个数组 {3,1,9,5,7,2,8},我想对其增序排列 第一轮: 第一次3和1进行比较,因为3大于1所以交...

2019-09-02 22:18:59 687

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除