自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

BarryLee的博客

每一个优秀的人背后都有一段默默努力的时光

  • 博客(12)
  • 资源 (9)
  • 收藏
  • 关注

原创 经典快排和随机快排

/** * 经典快排、随机快排 * 经典快排:利用最后一个数作为分界点,小的放左边,大的放右边,可以使用荷兰国旗问题(文末)的方法优化 * 随机快排:产生一个随机位置作为分界点 */import java.util.Arrays;public class C04_QuickSort { public static void quickSort(int[]arr){ if(arr...

2018-02-28 14:29:56 3771 2

原创 时间复杂度

常数时间的操作:一个操作如果和数据量没有关系,每次都是固定时间内完成的操作,叫做常数操作。时间复杂度为一个算法流程中,常数操作数量的指标。常用O来表示。具体来说,在常数操作数量的表达式中,只要高阶项,不要低阶项,也不要高阶项的系数,剩下的部分如果记为f(N),那么时间复杂度为O(f(N))。评价一个算法流程的好坏,先看时间复杂度的指标,然后再分析不同数据样本下的实际运行时间,也就是常数项时间mas...

2018-02-25 13:33:13 278

原创 对数器的概念和使用

对数器在无法进行数据校验的情况下起着极为重要的作用,尤其是数据量大的时候。这里使用简单的冒泡排序进行演示/** 冒泡排序 并使用对数器进行校验 对数器的概念和使用 0)有一个你想要测的方法a, 1)实现一个绝对正确但是复杂度不好的方法b, 2)实现一个随机样本产生器 3)实现比对的方法 4)把方法a和方法b比对很多次来验证方法a是否正确。 5)如果有一个样本使得比对出错,打印样本...

2018-02-24 17:34:49 793 1

原创 程序员代码面试指南--生成窗口最大值数组

/** 生成窗口最大值数组 【题目】 有一个整城数组arr和一个大小为w的窗口从数组的最左边滑到最右边,容口每次向右边滑一个位置。 如果数组长度为n,窗口大小为w,则一共产生n-w+1个窗口的最大值。 请实现一个函数。 -输入:整型数组arr,窗口大小为w。 -输出:一个长度为n-w+1的数组res,res[]表示每一种窗口状态下的最大值。 *//** 假设遍历到arr[i],...

2018-02-10 16:10:25 216

原创 程序员代码面试指南--用一个栈实现另一个栈的排序

/** 用一个栈实现另一个栈的排序 【题目】 一个栈中元素的类型为整型,现在想将该栈从顶到底按从大到小 的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不 能申请额外的数据结构。如何完成排序? *//* 将要排序的栈记为stack,申请的辅助栈记为help。在stack上执 行pop操作,弹出的元素记为cur。 -如果cur小于或等于help的栈顶元素,则将cur

2018-02-07 14:24:42 210

原创 程序员代码面试指南--猫狗队列

/** 猫狗队列 【题目】 实现一种狗猫队列的结构,要求如下: 用户可以调用add方法将cat类或dog类的实例放入队列中; 用户可以调用pollAll方法,将队列中所有的实例按照进队列的先后顺序依次弹出; 用户可以调用pollDog方法,将队列中dog类的实例按照进队列的先后顺序依次弹出; 用户可以调用pollCat方法,将队列中cat类的实例按照进队列的先后顺序依次弹出; 用户

2018-02-06 22:05:41 316

原创 程序员代码面试指南--如何仅用递归函数和栈操作逆序一个栈

/** 如何仅用递归函数和栈操作逆序一个栈 【题目】 一个栈依次压入1、2、3、4、5,那么从栈顶到栈底分别为5、4、 3、2、1。将这个栈转置后,从栈顶到栈底为1、2、3、4、5,也就 是实现栈中元素的逆序,但是只能用递归函数来实现,不能用其他数 据结构。 */import java.util.Stack;public class C03_ReverseStackUsing

2018-02-06 17:05:37 203

原创 程序员代码面试指南--由两个栈组成的队列

/** 由两个栈组成的队列 【题目】编写一个类,用两个栈实现队列,支持队列的基本操作(add、pollpeek)。 栈的特点是先进后出,而队列的特点是先进先出。我们用两个栈正好能把顺序反过来实现类似队列的操作。 具体实现上是一个栈作为压入栈,在压入数据时只往这个栈中压入, 记为stackPush;另一个栈只作为弹出栈,在弹出数据时只从这个栈弹出,记为stackPop。 因为数据压入

2018-02-04 22:38:40 202

原创 程序员代码面试指南--设计一个具有getMin功能的栈

/* 设计一个有getMin功能的栈 【题目】 实现一个特殊的栈,在实现栈的基本功能的基础上,再实现返回 栈中最小元素的操作。 【要求】 1.pop、push、getMin操作的时间复杂度都是O(1)。 2.设计的栈类型可以使用现成的栈结构。在设计上我们使用两个栈,一个栈用来保存当前栈中的元素,其功能和一个正常的栈没有区别,这个栈记为stackData;另一个栈用于保存每

2018-02-04 16:21:06 230

原创 左神算法课堂系列--纸条折痕问题

算法敏感度的训练【题目】请把一段纸条竖着放在桌子上,然后从纸条的下边向上方对折1次,压出折痕后展开。此时折痕是凹下去的,即折痕突起的方向指向纸条的背面。如果从纸条的下边向上方连续对折2次,压出折痕后展开,此时有三条折痕,从上到下依次是下折痕、下折痕和上折痕。给定一个输入参数N,代表纸条都从下边向上方连续对折N次,请从上到下打印所有折痕的方向。例如:N=1时,打印:downN

2018-02-04 14:12:36 1077

原创 左神算法课堂系列--数组划分最大绝对值之差问题

算法思维的锻炼【题目】已知一个整型数组arr,数组长度为size且size大于2,arr有size-1种可以划分成左右两部分的方案。比如:arr = {3, 2, 3, 4, 1, 2}第1种划分左部分为[3],右部分为[2, 3, 4, 1, 2]第2种划分左部分为[3, 2],右部分为[3, 4, 1, 2]第3种划分左部分为[3, 2, 3],右部分为[4,

2018-02-03 23:08:27 741

原创 牛客网直通BAT面试算法精讲课优惠码

优惠码:AGkLFZG链接:http://www.nowcoder.com/courses/1?coupon=AGkLFZG

2018-02-01 19:44:41 449

jdk8中文帮助文档.rar

这个文档是java8的中文帮助文档,由google翻译进行翻译的。个人决定还OK

2019-05-31

winrar 5.61 32位 64位 破解版

winrar5.61经典解压缩软件,包含32位,64位的中文版,经过本人测试,win7,8,10都是支持的,注意,解压后的 .key 文件与安装路径一致

2019-02-09

jquery中英文手册、js

有些同学确实不会怎么找到jQuery的中文手册,这里分享一下。当然这里还有英文的手册,还有js源码:jquery-1.4.4.js、jQuery1.6-apiEN、jquery1.7CH.chm、jquery-1.8.1.js、jquery-3.3.1.js、就不一 一列举了

2018-10-15

spring-security-core-3.1.0.RELEASE

spring-security-core-3.1.0.RELEASE,使用这个工具包可以不用自己写MD5加密了

2018-10-01

贪吃蛇源码

一个简单的贪吃蛇小程序,提供源码、素材及解析,值得注意的是,需要修改包名和代码中的图片的位置

2017-11-13

Java连接数据库的工具类

本资源是java开发的常用工具类,包括01.DTD约束文档,02.Schema约束文档,c3p0,commons-dbutils-1.6,commons-io-2.4,commons-pool-1.5.6,mysql-connector-java-5.1.37

2017-11-10

2016年软件设计师真题及答案

本资源为2016年软件设计师考试真题及答案,包括上半年下半年的上午题及下午题。答案有比较详尽的解析,可以作为考前复习之用

2017-11-09

java 基本功训练题及参考答案

如果你在学java的路上,那么这些题目会让你走的更快。

2017-10-03

课程设计之推箱子

你可能需要一个完整的推箱子源码来进行学习,这个源码具有十分完整的注释,还有经过优化的界面和背景音乐

2017-10-03

空空如也

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

TA关注的人

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