- 浏览: 50102 次
- 性别:
- 来自: 北京
最新评论
文章列表
去一家公司面试,面试我的前辈给出的一个算法题
题目是这样的:
有一个数组,其中的元素有负数正数和0,在其中截取连续的片段形成子数组,求子数组元素之和最大的子数组。
当时只想到了穷举法,前辈给指点了一种方法,当时手写了个大概,回来之后敲出来了
今天收到了offer,顺便把代码记录下来
package org.quainter.AlgorithmTest;
public class ArraySplitTest {
public static void main(String[] args) {
int arr[] = {-20, 26, 5, 0, ...
ubuntu14.04升级ubuntu16.04,安装过程被打断,陷入黑屏,等了好久没起色,
于是强制关机重启,并没有用,还是黑屏。
我的解决办法:
黑屏下按Ctrl+Alt+F1,进入tty1,执行下面命令:
sudo apt-get upgrade
提示下面的命令
sudo dpkg --configure -a
大概意思就是:利用”Debian“ 操作系统的套件管理系统(dpkg)把所有的软件包都重新修复一遍
等几分钟,执行完成后重启
reboot
成功进入桌面16.04LTS
RESTEasy 项目是 JAX-RS 的一个实现 官网地址 官方文档
本文的目的是:更好的处理Spring Bean和RESTEasy Resource之间的关系
首先,这篇文章是转的,点击查看原文。原文中引用了百度的图片,所以后半部分图挂了,这里重新把图传到了iteye供大家参考
巩固一下UML的定义:
百度百科 写道
Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG(Object Management Group)标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。 面向对象的分析与设计(OOA&D,OOAD)方法的发展在80年代末至90年代中出现了一个高潮,UML是这个高潮的产物。 ...
看过别人的博客就要记录下来,方便复习
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在及涉及的列上建立索引。
2.应尽量避免在子句中对字段进行值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:
select id from t where num is null
3.最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库. 备注、描述、评论之类的可以设置为
抄的,同一篇文章被大家抄来抄去,找不到原作者了,没法给链接,见谅
execution([modifiers-pattern] return-type-pattern [declaring-type-pattern] name-pattern(param-pattern)[throws-pattern])
"[]"括起来的部分是可选的。
返回类型 决定了方法的返回类型必须依次匹配一个连接点。使用的最频繁的返回类型模式是 *,它代表了匹配任意的返回类型。一个全称限定的类型名将只会匹配返回给定类型的方法。
名字模式 匹配的是方法名。可以使用 * 通配符 ...
先搬上一位大神写的spring aop 实现原理,概念性的东西也比较全。(后面是我写的例子)
其实关于aop的东西之前也看过好多遍了,但是概念性的东西也容易混淆,工作中写的概率也很低,以上其实可以理解为不会了
所以今天抽时间写了个例子来巩固下,顺带搬点概念,整理下来,以便之后复习思路更清晰,开始吧!
什么是AOP
AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们 ...
算是知识回收吧,工作之后没有涉及到多复杂的链接查询,基本上也就用用内连接,以至于连几种链接的概念都忘得有点模糊了。
通过连接运算符可以实现多个表查询。连接是关系数据库模型的主要特点,也是它区别于 ...
int(x [,base ]) 将x转换为一个整数
long(x [,base ]) 将x转换为一个长整数
float(x ) 将x转换到一个浮点数
complex(real [,imag ]) 创建一个复数
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 ...
项目中有个参数特别多的实体类,每次new一个对象都特别怕弄错,于是就有了下面示例的解决方式
/**
* @author quainter
*/
public class Person {
/**
* 私有化默认构造方法,
* 不希望使用这种方法构造,
* 索性就不让别人用,
* 算是个好习惯吧
*/
private Person(){}
//必填实例化参数
private String name;
//可选实例化参数
private int sex;
private int age;
private Str ...
公司项目部署到tomcat之后因为包冲突启动报错,一直需要手动删jar包,花点时间整理下pom文件
下面是报错:
严重: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/amc]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase. ...
项目里的一个表级联突然就不生效了,注意 是 突然
实体类如下:省略掉了该省略的..
public class ApplyForm {
private Map<String, String> extValue;
}
下面是映射文件:
<class name="ApplyForm" table="sv_apply_form">
<map name="extValue" table="sv_apply_form_ext_value" cascade="all-d ...
首先是百度百科地址
设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动。
一趟快速排序的算法是:
1)设置两个变量i、j,排序开始的时候:i=0,j=N-1;
2)以第一个数组元素作为关键数据,赋值给key,即key=A[0];
3)从j开始向前搜索,即由后开始向前搜索(j--),找到第一个小于key的值A[j],将A[j]和A[i]互换 ...
一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。1. 秒 (0~59)2. 分钟 (0~59)3. 小时 (0~23) 4. 天(月) (0~31,但是你需要考虑你月的天数)5. 月 (0~11)6. 天(星期) (1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)7. 年份 (1970-2099)注:其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔时间(8-18/ ...
SpringMVC框架理解
下面根据springMVC的框架图谈谈我的理解
1.页面发出request请求,经过servlet的filter,到达springMVC的前端控制器-DispatcherServlet
2.前端控制器首先去查找HandlerMapping,找到请求需要的控制器Controller
3.前端控制器根据请求路径找到相对应的拦截器(可以没有拦截器)
4.2和3中两步结合适配出可以被SpringMVC处理的HandlerAdapter
5.HandlerA ...