自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 阿里巴巴2018校招编程测试题

阿里巴巴程序测试题,说实话第一眼看到这道题我感觉像是博弈论。30分钟的时间没有做出来,只能骗点分,证明我是会写java的··· 还是说正题吧···题目是这样的,A、B是两个无聊的人,他们决定玩个游戏:现在有一个非负整数组成的数组,A和B轮流从数组中取出一个数,且只能从数组的两端取,每个人都以获得取到数之和最大的原则取数(这个原则很重要)。在数组被俩人消耗空之后,每个人计算取到的所有数字的和Sa和Sb,如果Sa

2017-07-07 23:37:02 1814

原创 千图成像(用图片拼图片)的java教程

大题思路我在知乎有回答在这里大概讲下代码。我实现的比较粗糙,只能使用正方形的图片,如有其他需要可以自行改动。下面是主要代码。 这里面有俩自定义的类,VectorParser(实现AimParser接口,用于像素替代算法的实现,其中parse()函数输入原料图片的rgb数组和目标图片对象,返回一个二维数组,其中每个数代表一个原料图片在其数组中的索引,将用该图片替换相应像素)和DefaultSampi

2017-02-20 23:30:02 5402 4

原创 (最长连续回文串---一个更容易想到的算法)Longest Palindromic Substring

关于这道题,我看了国内一些帖子,基本上都是从国外的帖子翻译的,大概有3种算法,动态规划(O(N2)),KMP匹配最长前缀(O(N2))和一个叫做Manacher(O(N))的算法。前两种算法可能比较容易想到,但是不管是复杂度还是编码难度,都不是一个优雅的选择,而第三种算法是一个非普适的算法,如果不事先知道,是几乎不可能在面试中想出来的,而且我认为在最坏情况下其复杂度也不是O(N)。在这里我提供我的解

2017-01-20 10:56:52 485

原创 Hibernate中使用JPA注解@OneToMany的cascade级联标签

Parent-Child关系在介绍级联标签之前要说一下@OneToOne、@OneToMany、@ManyToOne、@ManyToMany的父子关系(或者母子关系T.T)。 @OneToOne和@ManyToMany中:可自行选择 @OneToMany中:One端是parent端。Cascade属性使用级联标签有以下几个属性: CascadeType.PERSIST 、CascadeType

2016-12-06 21:56:55 6215

翻译 用多边形近似球体表面(icosphere)的Mesh数据的生成并使用openGL绘制

这里用到的Mesh数据结构如果不清楚可以参照我的上一篇。 参考了一个牛人的文章, 他的代码是C#的,我用C++改写了一遍,为了便于理解,省去了他的cache优化。创建网格球面一般3D球体的建模有两种Mesh可以选择,UVSphere和Iconsphere 左图为UVSphere,右图为Iconsphere。在一些情况下UVphere有很好的表现,但是,在另一些情境中,比如改变球体形状时,UV

2016-12-05 11:17:30 5952 3

原创 计算机图形学中的Mesh数据结构

Mesh(网格)是一个点(Point也可用Vertex表示)、法向量(Normal Vector),面(Face)的集合,它定义了一个3D物体的形状。 看一个例子: (a)中的四面体有4个顶点,4个面的法向量(正规化的),4个面,其中面中保存的是该面的N个(该例中是3个)顶点和该顶点法向量(与该面法向量相同,所以faces[0]的3个点的法向量的索引都是0)的索引。所以一定要小心点、向量数组

2016-12-05 10:12:40 12052 3

原创 Spring MVC中访问静态资源(如html, js, css等)

最近在学习Spring MVC时遇到一个问题,访问jsp页面正常,访问html页面就会报错。折腾了很久终于搞明白了。先看看Spring MVC处理HTTP请求的流程: Spring MVC的DispatcherServlet会接管所有的HTTP请求,再进行一系列映射返回一个View。但是,Servlet只有解析jsp文件的能力,却不能解析html文件。故如果从Controller中返回一个ht

2016-11-09 15:49:15 930

原创 JAVA中的volatile关键字

大家最熟悉的保证线程安全的技术是lock和synchronized块(后面就统称锁了),但如果在一些对排他性(一会介绍)没有太多限制的变量上使用锁会花费很多时间和资源,为了优化程序性能,就有了volatile。   锁提供两种特性:排他性和可见性。排他性很好理解,就是只有一个线程可以对锁住的东东进行操作。可见性就稍复杂,因为一个线程修改了某个东东,你不能悄悄儿地改完就拔D无情地走了,你还需要把你改

2016-10-27 23:28:00 309

原创 用gradle构建Java项目和自定义文件结构

这篇文章说的很详细,不过是翻译过来的,比较生硬,原文在这里。 但是他使用的是特定的文件结构(src/main/java/your package),如果你的项目文件结构不一样,比如我用eclipse生成的就是(src/your package),就需要在build.gradle中做一些简单的修改。 在build中添加如下代码:sourceSets { main { jav

2016-10-27 21:22:57 581

空空如也

空空如也

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

TA关注的人

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