摘要:
题目:淘宝在全国有很多货物存储仓库,相当于一个环形的链表,每个节点代表一个存货点,现在是每一个存货点存放的货物是不一样的,从而导致了不平衡,要求你给出一个高效算法,用于调节各个存货点的货物保持平衡,限制条件是只能在相邻的点之间传输货物 。求解:这不就是一个负载均衡的问题嘛,关键就是如何选取一个好的负载均衡的算法来实现这个需求。数据结构:双向链表策略:头结点记录所有的存货点的存货量,每隔一周,从头结点出发,单向遍历所有节点,更新头结点的记录所有存货点的存货量的数据。 每一次存货,先看看头结点的记录,往存货量最少的节点上存货。 每一周的更新,不仅仅要更新头结点的记录,同时进行存货点之间的存货平.. 阅读全文
摘要:
首先是lsof命令详解:lsof只能以root权限执行。lsof命令只能以root的权限执行用法如下:1.显示开启文件abc.txt的进程lsof abc.txt2.显示22端口现在被什么程序占用lsof -i 223.显示abc进程现在正在打开的文件lsof -c abc4.显示归属gid的进程情况lsof -g gid5.显示指定目录下被进程开启的文件,不会遍历该目录下的所有子目录lsof +d /usr/local/6.显示指定目录下被进程开启的文件,会遍历该目录下得所有子目录lsof +D /usr/local/7.显示使用fd为4的进程lsof -d 48.不进行域名解析,缺省会进行 阅读全文
摘要:
问题一:linux如何查看终端间键入的命令记录用过的命令很可能会储存在一个叫做.bash_history的文件中.默认情况下,这个文件记载你在shell提示下键入的最后500个命令。你可以在shell提示下键入history来把命令历史匆匆掠过,但是输出结果滚动的太快,你无法阅读每一行。 查看.bash_history的另一种方法是使用一个less之类的工具。在shell提示下键入less.bash_history,结果就会被一页一页地显示。要向前翻阅,按[Space]键;要向后翻阅,按键,要退出,按[q]键。你可能不需要查看这500个命令中的所有项目,因此命令history20可能会更有用。 阅读全文
摘要:
vi/vim 中可以使用 :s 命令来替换字符串。该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询。 :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky :n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky n 为数字,若 n 为 .,表示从当前行开始到最后一行 :%s/vivian/sk... 阅读全文
摘要:
1,自我介绍(5~10分钟):这个环节的主要目的在于建立面试官和求职者之间的沟通,面试官已经扫过你的简历,但需要对你有进一步的了解,以便建立一个初步印象,并便于进行接下 来的技术提问,所以这个环节最常见的问题无外乎“进行一下自我介绍”,有时会加上3分钟或是5分钟的时限,有时会询问“说说你最得意的项目/作品”之类的 变体问题。由于这个环节相对固定,因此准备起来相对容易,但即便如此,面试初期时我在自我介绍环节也犯过不少错误。这里以我的经历简单的总结下这个环节的要点:1,言简意赅,突出亮点面试初期时,我犯的一个很大的问题就是自我介绍废话太多,诸如“出生自xx省xx市”,“自我评价xxx”之类的屁话连 阅读全文
摘要:
问题1:字符数组名可以作为左值吗?当然不行比如char str[20] = {'h','e','l','l','o',' ','w','o','r','l','d'};str++;不可以这么干,因为字符数组名是一个常量指针,也就是是一个const char*#include <stdio.h>int main(){ char str[20] = {'h','e','l& 阅读全文
摘要:
2012年7月份,我来到了爱立信实习,那个时候对于实习生活很憧憬,因为这是我第一次迈入社会,第一次来到上海,开始自己的程序员生涯的第一站。 来到爱立信的第一天,我清晰的记得当时有好多的实习生来报道,有认识的,也有不认识的,接着大家被分到不同的部门,刚进入自己的部门时,感觉公司的工作环境好温馨,灯光通明,有咖啡厅,有免费的咖啡喝,虽然我只喝了几次,接着我被我的manager领到自己的team中去认识大家,我的team名叫flute,哈哈,我也有了自己的mentor,当时和team里面的人一一握手的时候还不好意思。 第二天我的实习开始正式开始。因为刚开始由于位子比较紧,所以我和其他两个实习... 阅读全文
摘要:
我们在进行网络编程的时候,有时候会遇到字节序转换的问题,为什么呢?因为我们都知道计算机对于数据的存储有两种方式,一种是大端模式,一种是小端模式,但是我们数据在网络上传输都是大端模式,这是为了统一。当我们发送端主机是小端模式时,我们要将主机的小端模式的字节序转换成网络的大端模式当我们接收端主机是小端模式时,我们要将网络的大端模式转换为接收端主机的小端模式当我们发送端主机是大端模式时,我们无需进行转换当我们接收端主机是大端模式时,我们也无需进行转换htonl() 将主机字节序转换为网络字节序 longntohl() 将网络字节序转换为主机字节序 longhtons() 将主机字节序转换为网络字节序 阅读全文
摘要:
关于python对象的三个特性:身份:python每个对象都有一个唯一标示符标示自己,这个标示符其实就是对象的内存地址,可以通过id()来得到类型:可以通过type()来得到值:关于python布尔逻辑操作符:and即是&&or即是||not即是!还有一个is,表示两个python对象是不是同一个地址。a = 1, b = aa is b///True注: Python中的整型对象和字符串对象是不可变对象,Python的变量都指针都是指向的同一个对象,比如: a = 4;b = 4;a is b #输出True id(a) == id(b) 为True a = 'abc 阅读全文
摘要:
http://www.ibm.com/developerworks/cn/linux/l-memory-leaks/ 阅读全文