Code for human beings

All fool can write code that a computer can understand.


今天去参加淘宝的笔试,其中2道题目挺有意思的,和大家分享下:
1.不用比较运算符取两个int中的较小值:
这是我给出的答案:


return ( x / y * y+ y / x * x ) / (x / y + y / x);

这里主要运用的是 x / y, y / x 是0还是大于1来算出较小值
2.不引入临时变量交换两个int:
我的答案:

x = x ^ y;
y = x ^ y;
x = x ^ y;

证明过程:
因为异或是按位来异或的,所以以上公式(那段代码)x, y取任何值都可以看做是以下四种情况的组合:
1.a = 0; b = 0;
2.a = 0; b = 1;
3.a = 1; b = 0;
4.a = 1; b = 1;
其中a, b为x, y二进制中对应的某一位(即若a为x的第N位, 那么b为y的第N位)。
容易证明:以上公式对上面四种情况都成立,证明终了。

首次用svn,将项目框架同步到Google Code上,搞了好几个小时,终于成功了,把之间遇到的问题跟大家分享一下:
1.unable to load svn client:
首先请确保你已经装了subversion和libsvn-java这两个包是javaHL所必须的。
然后请在eclipse.ini(eclipse的安装目录下)的-vmargs这一行下面添加

-Djava.library.path=/usr/share/java/
-Djava.library.path=/usr/lib/jni/

2.无论怎么输账号密码都认证失败:
这个原因我还没有搞懂,根据网上的资料推测,可能是我第一次输账号密码的时候将密码输错(我将自己的google账号的密码输进去了,没想到google code还有个另外的密码),然后又点了保存密码,结果后面无论输什么subclipse都将我第一次输的账号密码拿去认证了(传说是subclipse的一个bug,哈哈,传说而已),总之,大家输账号密码的时候小心点就行了。
至于我后来是怎么解决的,把原来的eclipse删掉,重新将原来mickey打包的eclipse解压出来,配置了一下,神奇地连账号和密码都没有输就将项目框架同步上了,至今还没有搞清楚是为什么(估计是subclipse将密码保存到eclipse目录下的某个文件下了,不过话说回来,怎的没输账号密码就提交上去了呢?)。

往Maven2项目里添加oracle驱动依赖,结果报了下面的错误

09-4-8 下午10时17分23秒: Missing artifact ojdbc:ojdbc:jar:14:compile

Maven2果然脑残,但是实训要求使用,还是硬着头皮去用呗。
解决方案:
去网上下个oracle的驱动:ojdbc14.jar,名字改为:ojdbc-14.jar,扔到本地仓库里去,然后再去添加下依赖就OK了。具体路径为:
~/.m2/ojdbc/ojdbc/

启动sqlplus出现如下错误

/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh: 114: [[: not found
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh: 114: [[: not found

其实这个错误好像不影响使用,但是如果你觉得不爽,那么请编辑:
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh
将第一行的
#!/bin/sh

修改成
#!/bin/bash

之前在Ubuntu8.10上装过oracle 10g enterprise edition,将Ubuntu伪装成redhat,结果导致现在oracle xe express刚装上还可以用,重启后就无法开启了,究其原因是因为经过伪装,oracle将ubuntu当成redhat,一直说

/etc/sysconfig/oracle-xe: No such file or directory

解决办法:
只要将/etc/redhat-release文件删掉就OK了。


被战火烧死的母亲,战死的父亲,冷漠的亲戚;
爬满苍蝇的西瓜,断绳的秋千,飞舞的萤火虫;
红色的糖罐,酸酸的糖果,甜甜地喊一声哥哥;
节子的笑声,永远留在萤火虫之墓;
很晚了,睡觉吧;

Posted by Picasa

实训需求阶段试着用了下GanttProject画甘特图来追踪项目进度,可以随时查看项目的进度,看看小组里的人都做了些什么东西,不过软件本身是用Java做的,需要安装JRE。
小P一张

XMind一款跨平台的思维导图软件
Eclipse的界面,酷酷的图标,可以画思维导图,鱼刺图,结构图,树状图,支持windows,linux,mac平台,另外还提供携带版,注册一个帐号就可以下载来免费用,在实训的需求阶段试着用XMind画了几个图,感觉很不错,下次可以考虑把它去参加Dragonfly的小组讨论:
不废话了,上几个小图给大家瞧瞧吧:

订阅: 博文 (Atom)