自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

翻译 最长回文字符串算法-Manacher’s Algorithm-马拉车算法

本文翻译于LeetCode上关于最长回文字符串的说明除了翻译之外,其中还加入了个人的理解的部分,将其中没有详细说明的部分进行了解释。时间复杂度为O(n)的算法首先,我们需要讲输入的字符串 S 进行一下转换得到 T,转换的方法就是通过在每两个字符之间插入一个字符串“#”,你马上就能知道为什么要这么做。例如 输入字符串 S = “abaaba”, 转换之后得到了 T = “#a#b#a

2015-12-29 20:56:25 4418 2

原创 Java 实现堆排序

堆排序主要是利用堆在根节点上的特性,既在大顶堆的情况下,堆的第一个元素是堆当中最大的元素,而在小顶堆的情况下,堆的第一个元素是最小的节点。所以在堆排序的过程,主要的操作就是对每次取出堆顶的元素之后(在这里使用大顶堆),我们就选出了堆中的最大元素,然后对堆剩下的元素进行再次进行大顶堆的调正,得到一个新的大顶堆,这样再次取值的时候就可以取出剩下元素的最大值,依次类推,即可得到一个有序的数组。堆的时间复杂

2015-12-20 14:22:57 448

原创 希尔排序

希尔排序是对插入排序的一种改进。 下面对希尔排序的介绍来自于维基百科*希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位下面是代码实现package com.

2015-12-06 15:58:50 1315

空空如也

空空如也

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

TA关注的人

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