已然进入十月,当午的烈日还告示着人们秋老虎的到来,晚间的凉爽却冲却了它的锐气。看看电脑右下角的日历,月份从一位数变成了两位数,如果不仔细去回想,时间过得还很快。
记得高中那年,乌鲁木齐的雪来的特别早,叶子还绿着,过大的降雪量将树枝压弯,压垮,漫街都是还未准备过冬的树枝,渐渐地,大雪将这一切掩埋。恍惚间,不知道是冬是春,空气中夹杂着那份凉意,让昨日还衣着秋装的人们缩紧了身子。雪渐渐退去,天晴了,心亮了。
2013年注定不平凡,上半年,找工作是这一年的主旋律,从一月份开始有终面到三月份办理工作签证申请,现在看虽然时间短,但是每一天过得心里总觉得有东西压着自己,难以喘息,也觉得那一段时间过得很慢长。这三个月,去了美国很多地方,圣路易斯,西雅图,波士顿,虽然去了不同地方,但是主要是面试,也没有享受太多。当一切都尘埃落定的时候,突然觉得,心亮了。
之后的时间,考试然后毕业,一切都过得那么快,还没来得及相聚,就已经各奔东西。和君君一起开车去加州是一次难忘的经历,或者说是一次冒险,虽然大部分时间都在赶路,但是旅途的一切,都让人难以忘怀,莫比尔的战舰,新奥尔良的街市,休斯顿的姚餐厅,圣安东尼奥的岩洞和城市,艾尔帕索的惊心动魄,凤凰城的中国城和故人,洛杉矶的沙滩、中餐、朋友,一路向西,心底透亮。
回来便开始了工作,从6月初到现在,时间开始加速,从Incident App到了解老系统到新系统,从各种几百行的query到自己的Cube不断更新,从给美国大叔写APP到自己离SDev越来越远,只有四个月的时间。从android app的上线到赚钱,再到赚50刀一天,再到发现钱无法取出,到放弃,到不甘心,到换合作伙伴到继续,到继续坚持。。。是倔强,是未知。
昨天,和君君定了回国的机票,特别开心,回国终于排上了日程,两年半的阔别家乡,恍如昨日,心底透亮,安静。
Friday, October 4, 2013
Saturday, September 28, 2013
Thursday, September 26, 2013
杂记-健身+减肥
不知道什么时候开始成胖胖的,老是被君君这么喊,自己都觉得听不好意思了。虽然自己本身不是特别瘦,但是想到自己每天都坐在办公室,和一帮比我大十几二十几岁的人坐在一起,自己也感觉懒散很多。
不知道何时起,所有人见到我都说:你最近胖了啊~我就只能笑笑说:是啊,生活好啊。确实是生活好呢,天天下班回家都是找来各种好吃的食谱做,这做饭的手艺和体重有时候确实成了正比,这点在男生身上尤为明显。
说到减肥,主要还是肚子上的赘肉,虽然一摸大把的情况在本人身上不曾发生,但是一小把一小把还是可以计数的。也许是自己的肚子麻痹大意,居然自己将这一小把一小把合并组建,于是减肚子就成了一个任务。
说到健身,自己住的小区不提供健身的场所,只有一个布满落叶的游泳池。曾几何时尝试过几次游泳,但是满嘴的落叶增加维他命也不是那么回事。于是乎,前思后想几百遍,终于下定决心,健身去!
说到健身会所,离家近是我选择的重要因素之唯一,一三五下班后,走路到健身馆5分钟时间,就可以开始锻炼,非常方便。现在带上君君一起,就更有动力了~健身会所有个牛气哄哄的条令,一个月去满12次就可以便宜许多。于是,这也成了我的另一个动力。但是坚持一个月下来发现,看似一周三次,其实不太好坚持。一次去签到两次,就成了我和君君的一种战略,但是,这种战略是杀手锏,不可常用。
林大哥一次视频告诉我觉得我瘦了,让我很意外,总结瘦了的原因:1. 高强度灯光从头顶照下来,2. 很长时间不理发。
其实,生活中可以减肥健身的地方很多,关键在于坚持,这对我虽然是一句明白的不能再明白的话,但是履行起来又如履薄冰。哎~~吃饱喝足,养君君,赚钱重要~
不知道何时起,所有人见到我都说:你最近胖了啊~我就只能笑笑说:是啊,生活好啊。确实是生活好呢,天天下班回家都是找来各种好吃的食谱做,这做饭的手艺和体重有时候确实成了正比,这点在男生身上尤为明显。
说到减肥,主要还是肚子上的赘肉,虽然一摸大把的情况在本人身上不曾发生,但是一小把一小把还是可以计数的。也许是自己的肚子麻痹大意,居然自己将这一小把一小把合并组建,于是减肚子就成了一个任务。
说到健身,自己住的小区不提供健身的场所,只有一个布满落叶的游泳池。曾几何时尝试过几次游泳,但是满嘴的落叶增加维他命也不是那么回事。于是乎,前思后想几百遍,终于下定决心,健身去!
说到健身会所,离家近是我选择的重要因素之唯一,一三五下班后,走路到健身馆5分钟时间,就可以开始锻炼,非常方便。现在带上君君一起,就更有动力了~健身会所有个牛气哄哄的条令,一个月去满12次就可以便宜许多。于是,这也成了我的另一个动力。但是坚持一个月下来发现,看似一周三次,其实不太好坚持。一次去签到两次,就成了我和君君的一种战略,但是,这种战略是杀手锏,不可常用。
林大哥一次视频告诉我觉得我瘦了,让我很意外,总结瘦了的原因:1. 高强度灯光从头顶照下来,2. 很长时间不理发。
其实,生活中可以减肥健身的地方很多,关键在于坚持,这对我虽然是一句明白的不能再明白的话,但是履行起来又如履薄冰。哎~~吃饱喝足,养君君,赚钱重要~
Labels:
杂记
Monday, September 23, 2013
留美找工作推荐网站
许多在美留学生有着毕业后在美国工作一段时间的想法,然而由于美国的移民政策等等因素的制约,在美国找工作还是要费不少功夫和时间的。除了靠校友推荐,以及学校的Career Center帮忙以外,从大型的招聘类网站找工作不失为一个选择。
留学生在美国找工作的时候往往会因为信息量不足,而缺失很多机会,美国用来找工作的大型网站有很多,笔者也用过不少,下面介绍一些笔者认为最可靠的,希望给开始着手找工作的同学们提供多一些有用的信息:
首先,了解一下大多数工作招聘的流程,一般公司会有一个内部招聘网站(这也是内推的地方),当然也有很多例外,比如公司对外招聘。而这个招聘网站是只有在本公司的员工才能有权进入的。这个内部网站是职位opening的第一站,它的开设有两个目的:第一,内部员工想调整岗位,可以自行申请(比如转岗位,从Accounting去做HR),第二,内部员工有认识的亲戚,朋友适合这个岗位。美国人其实也有很多这种一家人在一个地方工作的情况,而且这种内部推荐的人往往会被认为从外围招聘来的人更可靠。所以,如果有朋友在XX公司高就的,没事聊聊天,麻烦他帮你看看有没有opening什么职位,帮忙递个简历什么的,面试率会远远高于这种从工作网站投递简历的。
如果公司在两周内招不到人, 就会对外发布广告,这些广告有些在公司的招聘网站上,有的直接会发布到大型招聘网站内,如果没有朋友帮你推荐,那么试试这些找工作的网站,也是一种可行的办法:
1. Monster
大名鼎鼎的招聘网站,据说是全美最大的,eBizMBA Rank排名同类网站第一,月访问量28,000,000。可以设置邮件提醒,工作类型,地区查询。设置一个邮件每天推送到你的邮箱,非常的方便。
网址:http://www.monster.com/
2. Indeed
Monster 的同类网站,比较类似于Monster,功能这些都比较像,这里就不累述。
网址:http://www.indeed.com/
3. Glassdoor
面经是其重点和特色,如果接到面试一定要过来看看,可以对接下来的面试有很大的启发。当然,这里也有工作的信息发布,不过发布量当然比不过上面两位。
网址:http://www.glassdoor.com/index.htm
4. Dice
IT为主的招聘网站,其特色是以IT招聘为主,算是对市场的一个细分,而大多数提供H1B的雇主都是IT公司,所以Dice也是一个不错的选择。
网址:http://www.dice.com/
5. LinkedIn
相信不少同学去CRC都有过推荐申请LinkedIn的经历,这是类似于Facebook的社交型网站,不同于Facebook的娱乐复杂的信息,其主要特点为商务级别的professional,可以通过这个网站找到之前的校友,求内推。这个网站也有不少工作的发布,而且是可以看到发布者的,也是一个比较透明的找工作的平台
留学生在美国找工作的时候往往会因为信息量不足,而缺失很多机会,美国用来找工作的大型网站有很多,笔者也用过不少,下面介绍一些笔者认为最可靠的,希望给开始着手找工作的同学们提供多一些有用的信息:
首先,了解一下大多数工作招聘的流程,一般公司会有一个内部招聘网站(这也是内推的地方),当然也有很多例外,比如公司对外招聘。而这个招聘网站是只有在本公司的员工才能有权进入的。这个内部网站是职位opening的第一站,它的开设有两个目的:第一,内部员工想调整岗位,可以自行申请(比如转岗位,从Accounting去做HR),第二,内部员工有认识的亲戚,朋友适合这个岗位。美国人其实也有很多这种一家人在一个地方工作的情况,而且这种内部推荐的人往往会被认为从外围招聘来的人更可靠。所以,如果有朋友在XX公司高就的,没事聊聊天,麻烦他帮你看看有没有opening什么职位,帮忙递个简历什么的,面试率会远远高于这种从工作网站投递简历的。
如果公司在两周内招不到人, 就会对外发布广告,这些广告有些在公司的招聘网站上,有的直接会发布到大型招聘网站内,如果没有朋友帮你推荐,那么试试这些找工作的网站,也是一种可行的办法:

大名鼎鼎的招聘网站,据说是全美最大的,eBizMBA Rank排名同类网站第一,月访问量28,000,000。可以设置邮件提醒,工作类型,地区查询。设置一个邮件每天推送到你的邮箱,非常的方便。
网址:http://www.monster.com/
2. Indeed
Monster 的同类网站,比较类似于Monster,功能这些都比较像,这里就不累述。
网址:http://www.indeed.com/
3. Glassdoor
面经是其重点和特色,如果接到面试一定要过来看看,可以对接下来的面试有很大的启发。当然,这里也有工作的信息发布,不过发布量当然比不过上面两位。
网址:http://www.glassdoor.com/index.htm
4. Dice
IT为主的招聘网站,其特色是以IT招聘为主,算是对市场的一个细分,而大多数提供H1B的雇主都是IT公司,所以Dice也是一个不错的选择。
网址:http://www.dice.com/
5. LinkedIn
相信不少同学去CRC都有过推荐申请LinkedIn的经历,这是类似于Facebook的社交型网站,不同于Facebook的娱乐复杂的信息,其主要特点为商务级别的professional,可以通过这个网站找到之前的校友,求内推。这个网站也有不少工作的发布,而且是可以看到发布者的,也是一个比较透明的找工作的平台
Friday, September 20, 2013
[LeetCode] Anagrams Rotate List
Given a list, rotate the list to the right by k places, where k is non-negative.
For example:
Given 1->2->3->4->5->NULL and k = 2,
return 4->5->1->2->3->NULL.
Idea:
For example:
Given 1->2->3->4->5->NULL and k = 2,
return 4->5->1->2->3->NULL.
Idea:
- link the tail to head to construct a circle
- start from head until stop by total - (k%total)
- set tail.next to null to break the circle
Labels:
LeetCode
Thursday, September 19, 2013
[LeetCode] Anagrams
Given an array of strings, return all groups of strings that are anagrams.
Note: All inputs will be in lower-case.
Idea:
- Put the array of String(convert to char) into a queue
- Merge sort all of the item in the queue
- Use a Hashtable, put sorted string as key, Stack as value (which has a stack of original string)
- Iterate the Hashtable, Iterate stack which size is greater than, put the String into ArrayList from that stack
Labels:
LeetCode
Wednesday, September 18, 2013
[LeetCode]Two Sum
Given an array of integers, find two numbers such that they add up to a specific target number.
The function twoSum should return indices of the two numbers such that they add up to the target, where index1 must be less than index2. Please note that your returned answers (both index1 and index2) are not zero-based.
You may assume that each input would have exactly one solution.
Input: numbers={2, 7, 11, 15}, target=9
Output: index1=1, index2=2
Output: index1=1, index2=2
Labels:
LeetCode
杂记--身体抱恙
清晨,迷迷糊糊地从梦中起来,感觉身体已无大碍,昨夜发烧的额头已没有了滚烫的感觉,身体感觉有些乏力,但是已然没有了昨晚全身酸痛发烧的感觉。多亏臭臭的细心照顾,又熬姜汤又搓胳膊的,才能这样快的康复。想想生病的原因,也许是前段时间事业受阻,亦或是工作的地方空调开得过于凶猛,也就稀里糊涂的病了。
九月末佛州的早上,空气中夹杂着一股凉意,不冷不热的,让我想起家里的感觉。那时候,这么早起来还属于学生的时代,每天要坐一段公交车。而从家里走到车站的五分钟里,就能感受到这股凉意,沁人心脾。
这段时间有些迷惘,有些失落,不知今后回头看自己的现在,是何种滋味。。
还好有臭臭陪着,加油,我们一起~
Labels:
杂记
Tuesday, September 17, 2013
Embed Code with Blogger Tutorial
SyntaxHighlighter is a fully functional self-contained code syntax highlighter developed in JavaScript.
You can find more detail about SyntaxHighlighter at http://alexgorbatchev.com/SyntaxHighlighter/
SyntaxHighlighter provides a broad syntax library for users to highlight their code.
Here is a screen shot on how many language does current version support:
The idea is pretty straightforward, you just need to link the .js file in your blog, and then simply tell the blog about which part you want to show as Code. Want to know how to do it? I will walk you through on how to create a blog template, create embedded code page and apply for different theme.
Now, let's start:
First, We need to select the Edit HTML.
Under Edit HTML, find the tag </head>, you need to put SyntaxHighlighter brush library here.
Copy and pasta following code:
After Saving the the template, you have done the first step!
Then, you can create your new post as usual.
Next, switch your view from compose to HTML view
Put the code you want, for simplicity, I will do the following code:
/**
* SyntaxHighlighter
*/
function foo()
{
if (counter <= 10)
return;
// it works!
}
It will show like
/**
* SyntaxHighlighter
*/
function foo()
{
if (counter <= 10)
return;
// it works!
}
Now you have done pretty much of all of them!
Finally, you may not like the theme of your code. You can find all the theme here.
All you need to do is go back to the first step, edit HTML, Find one line of code like:
Change to the theme you would like to use, for example:
Now you can create the embedded code HTML yourself, enjoy!
I hope this blog will be helpful!
Wednesday, August 14, 2013
Candy Crush Saga Solution
Candy Crush Saga Solution
https://play.google.com/store/apps/details?id=com.william.candycrushsagasolution&hl=en
Tuesday, May 14, 2013
生命如此短暂,你仍走的如此匆忙
纪念我们笑过,哭过,奋斗过的曾经。。。
清晨,阳光将我唤醒,我习惯性的翻看手机,微信讨论组里突然出现了一位初中好友去世的消息。我极度不相信,不断地向上去翻看之前的留言去找寻玩笑之类的消息。直到……再也翻不上去,脑子“嗡”地一下炸开了,脑海中仿佛有千百思绪,却无论如何也抓不住其中任何一条,我恍惚着看着手机,不断推送过来的信息证明了这一点,他已经离开了我们,永远的失去了消息。
印象中的你,和蔼可亲,幽默感是你的主旋律,和你为伴总是笑声不断。没想到,两年前去北京办事,我们当时的一聚成为了阴阳相隔的分别。

此时此刻,为你默默地在地球的另一端送上我的祝福,
生命如此短暂,你仍走的如此匆忙,
一路走好
清晨,阳光将我唤醒,我习惯性的翻看手机,微信讨论组里突然出现了一位初中好友去世的消息。我极度不相信,不断地向上去翻看之前的留言去找寻玩笑之类的消息。直到……再也翻不上去,脑子“嗡”地一下炸开了,脑海中仿佛有千百思绪,却无论如何也抓不住其中任何一条,我恍惚着看着手机,不断推送过来的信息证明了这一点,他已经离开了我们,永远的失去了消息。
印象中的你,和蔼可亲,幽默感是你的主旋律,和你为伴总是笑声不断。没想到,两年前去北京办事,我们当时的一聚成为了阴阳相隔的分别。

此时此刻,为你默默地在地球的另一端送上我的祝福,
生命如此短暂,你仍走的如此匆忙,
一路走好
Wednesday, April 10, 2013
Merge Sort Recursive
public class Merge {
public int [] data;
private int [] helper;
public Merge(int[] a){
data=a;
this.helper = new int[a.length];
}
public void splitAndMerge(int begin, int end){
if(begin<end){
int middle = (begin+end)/2;
splitAndMerge(begin, middle);
splitAndMerge(middle+1, end);
MergeSort(begin, middle, end);
}
}
public void MergeSort(int begin, int middle, int end){
for(int i=begin;i<=end;i++){
helper[i]=data[i];
}
int x=begin;
int y=middle+1;
int z=begin;
while(x<=middle&&y<=end){
if(helper[x]<=helper[y]){
data[z]=helper[x];
x++;
z++;
}
else{
data[z]=helper[y];
y++;
z++;
}
}
//Copy the rest of left to the array
while(x<=middle){
data[z]=helper[x];
z++;
x++;
}
}
}
Labels:
Algorithm
Friday, April 5, 2013
[Introduction to Algorithms] Merge Sort Example
Book - [Introduction to Algorithms]
Page 31
Divide-and-conquer approach: they break the problem into several subproblems that are similar to the original problem but smaller in size, solve the subproblems recursively, and then combine these solutions to create a solution to the original problem.
Coded in Java
Merge sort example
O(n)
public static void main(String[] args) {
int [] data={99,7,3,4,6,23,34,5,2,100};
int [] newdata = MergeSort.mergeSort(data, 1, 4, 8);
for(int i=0;i<newdata.length;i++){
System.out.print(newdata[i]+" ");
}
}
public static int[] mergeSort(int[] data, int p, int q,int r){
int n1 = q-p+1;
int n2 = r-q;
int [] L = new int[n1+1];
int [] R = new int[n2+1];
int index = p ;
//Sort Left
for(int i=0;i<L.length;i++){
L[i]=data[p];
p++;
}
Arrays.sort(L);
L[n1]=Integer.MAX_VALUE;
//Sort Right
for(int i=0;i<R.length;i++){
R[i]=data[q+1];
q++;
}
Arrays.sort(R);
R[n2]=Integer.MAX_VALUE;
//Here comes the merge of left and right
for(int i=0, j=0;index<r+1;){
if(L[i]>=R[j]){
data[index++]=R[j++];
}
else if(L[i]<R[j]){
data[index++]=L[i++];
}
}
return data;
}
Page 31
Divide-and-conquer approach: they break the problem into several subproblems that are similar to the original problem but smaller in size, solve the subproblems recursively, and then combine these solutions to create a solution to the original problem.
Coded in Java
Merge sort example
O(n)
public static void main(String[] args) {
int [] data={99,7,3,4,6,23,34,5,2,100};
int [] newdata = MergeSort.mergeSort(data, 1, 4, 8);
for(int i=0;i<newdata.length;i++){
System.out.print(newdata[i]+" ");
}
}
public static int[] mergeSort(int[] data, int p, int q,int r){
int n1 = q-p+1;
int n2 = r-q;
int [] L = new int[n1+1];
int [] R = new int[n2+1];
int index = p ;
//Sort Left
for(int i=0;i<L.length;i++){
L[i]=data[p];
p++;
}
Arrays.sort(L);
L[n1]=Integer.MAX_VALUE;
//Sort Right
for(int i=0;i<R.length;i++){
R[i]=data[q+1];
q++;
}
Arrays.sort(R);
R[n2]=Integer.MAX_VALUE;
//Here comes the merge of left and right
for(int i=0, j=0;index<r+1;){
if(L[i]>=R[j]){
data[index++]=R[j++];
}
else if(L[i]<R[j]){
data[index++]=L[i++];
}
}
return data;
}
Labels:
Algorithm
Subscribe to:
Posts
(
Atom
)