- 博客(19)
- 资源 (4)
- 收藏
- 关注
转载 每个程序员都应该收藏的算法复杂度速查表
这篇文章覆盖了计算机科学里面常见算法的时间和空间的大 OBig-O 复杂度。我之前在参加面试前,经常需要花费很多时间从互联网上查找各种搜索和排序算法的优劣,以便我在面试时不会被问住。最近这几年,我面试了几家硅谷的初创企业和一些更大一些的公司,如 Yahoo、eBay、LinkedIn 和 Google,每次我都需要准备这个,我就在问自己,“为什么没有人创建一个漂亮的大 O 速查表呢?”所以,为了节
2016-11-18 11:12:24
441
转载 实战解析Android架构设计原则
摘要:好的软件设计必须能够帮助开发者发展和扩充解决方案,保持代码清晰健壮,并且可扩展,易于维护,而不必每件事都重写代码。面对软件存在的问题,必须遵守SOLID原则,不要过度工程化,尽可能降低框架中模块的依赖性。嘿!经过一段时间收集了大量反馈意见后,我认为应该来说说这个话题了。我会在这里给出我认为构建现代移动应用(Android)的好方法,这会是另一番体味。开始之前,
2015-12-02 16:04:42
890
转载 Android动画学习笔记-Android Animation
3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这三种动画模式在SDK中被称为property animation,view animation,drawable animation。 可通过NineOldAndroids项目在3.0之前的系统中使用P
2015-11-04 15:41:11
450
转载 Ubuntu 12.04下安装RabbitVCS,类似Windows的TortoiseSVN
Ubuntu 12.04下安装RabbitVCS的方法步骤如下:第一步:将rabbitvcs的添加到源里面。(次操作会提示是否要添加到源里面,点击ENTER添加,Ctrl+C不添加),这里选择ENTER方便更新。sudo add-apt-repository ppa:rabbitvcs/ppa第二步:根据第一步的情况来是否跳过该步骤,如果第一步出现导入key,那第二
2015-06-23 14:38:52
562
原创 SQLite 内置函数
一、聚合函数: SQLite中支持的聚合函数在很多其他的关系型数据库中也同样支持,因此我们这里将只是给出每个聚集函数的简要说明,而不在给出更多的示例了。这里还需要进一步说明的是,对于所有聚合函数而言,distinct关键字可以作为函数参数字段的前置属性,以便在进行计算时忽略到所有重复的字段值,如count(distinct x)。函数说明avg(x)
2014-08-01 11:28:00
543
转载 Ubuntu下自动加载U盘
目前一些主流桌面系统(如Gnome,KDE,Xfce)的较新版本都支持自动挂载(mount)U盘了. 一个流传很广的说法是 HAL(硬件抽象层) 起了自动挂载的作用, 其实这是误解. 对于2.6内核而言, udev 才是直接从内核接收设备连接或断开信息的主体. udev 从内核得到信息后,根据一些简单规则(注意,是简单规则), 在 /dev 目录下创建相应的设备节点, 并进行
2014-04-25 23:09:20
3887
转载 passwd和shadow格式
一、/etc/passwd/etc/passwd 文件是一个纯文本文件,每行采用了相同的格式: name:password:uid:gid:comment:home:shell name 用户登录名 password 用户口令。此域中的口令是加密的,常用x表示。当用户登录系统时,系统对输入的口令采取相同的算法,与此域中的内容进行比较。如果此域为空,表明该用户登录时不需要口令。
2014-04-01 15:43:55
656
转载 Linux route
1. 使用ifconfig命令配置并查看网络接口情况 示例1: 配置eth0的IP,同时激活设备: # ifconfig eth0 192.168.4.1 netmask 255.255.255.0 up 示例2: 配置eth0别名设备 eth0:1 的IP,并添加路由 # ifconfig eth0:1 192.168.4.2 # route add –host 1
2014-03-24 18:11:02
725
转载 如何用strace找出ssh后门
首先我先编译一个ssh后门,这个ssh后门会在/tmp/xxxxxx记录所有的登录密码 启动他 QUOTE: root@laptop:/usr/local/openssh2/sbin# ps aux | grep sshd root 13619 0.0 0.3 7432 1752 ? Ss 23:44 0:00 ./sshd -p 1234 roo
2014-03-24 18:09:56
1059
转载 修改Linux动态库的搜索路径
众所周知,Linux动态库的默认搜索路径是/lib和/usr/lib。动态库被创建后,一般都复制到这两个目录中。当程序执行时需要某动态库,并且该动态库还未加载到内存中,则系统会自动到这两个默认搜索路径中去查找相应的动态库文件,然后加载该文件到内存中,这样程序就可以使用该动态库中的函数,以及该动态库的其它资源了。在Linux 中,动态库的搜索路径除了默认的搜索路径外,还可以通过以下三种方法来指定。
2013-10-28 16:12:54
6540
原创 MW4530R Openwrt 无线路由中继设置
我接入外网的路由器是TP-Link,不需要做任何设置,这里主要介绍openwrt中建立中继的过程。1.设置自己路由lan口的IP地址,网段和TP-link的不一样(TP-link为192.168.11.1,这个设置为192.168.1.1)。2. 在无线标签下点击“扫描网络”。3. 在新出现的界面中,会列出你附近的无线网络。点击你需要中继的网络右边的“加入网络”。4.在
2013-10-27 00:02:53
55857
1
转载 ubuntu中安装man手册查看函数原型
ubuntu中man的手册默认没有装。用下面几条命令就行了:sudo apt-get install manpages sudo apt-get install manpages-de sudo apt-get install manpages-de-dev sudo apt-get install manpages-dev另附上一篇从他人处copy来的文章:ubuntu
2013-09-04 14:07:39
748
转载 select,epoll,poll比较
selectselect本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样所带来的缺点是:1 单个进程可监视的fd数量被限制2 需要维护一个用来存放大量fd的数据结构,这样会使得用户空间和内核空间在传递该结构时复制开销大3 对socket进行扫描时是线性扫描pollpoll本质上和select没有区
2013-09-04 13:49:43
600
转载 用QEMU+GDB 调试LINUX KERNEL
1。安装QEMU,安装个LINUX虚拟机。被调试的是虚拟机。2。重新编译虚拟机里LINUX KERNEL,打开DEBUG相关设置,DEBUG_INFO。3。用QEMU 启动被调试的虚拟机的时候,加上 -S 参数。注意是大写S,表示虚拟机一启动起来就先暂停(SUSPEND).4。选中QEMU那个虚拟机,按 CTL+ALT+2切换到控制窗口,然后输入gdbserver 1234. 意思
2013-08-29 14:43:08
2134
转载 qemu 安装LFS
很早以前就使用过过qemu,很多手机的模拟器用的都是qemu,但是当初发现qemu一启动总是占用100%的cpu,所以当初对qemu没有太多的好感,后来学习linux内核的时候,发现qemu可以单步跟踪内核。不是kgdb,而是qemu自带的cpu仿真调试功能,这个非常不错,准备着手研究一下。以后学习linux代码也就方便多了。ubuntu apt 安装的qemu不支持kqemu。所以需要自
2013-08-29 14:40:17
1543
转载 openwrt顶层Makefile分析
这里主要介绍openwrt的主Makefile,并未对各个目录下的Makefile和相关文件进行介绍。 在Makefile里是两个主要的分支,由if语句根据OPENWRT_BUILD的值进行不同的处理。第一个部分主要是执行编译前的准备,第二个部分是执行编译。打开Makefile文件,可以看到默认的make目标world,这个目标没有依赖文件和执行命令。 执行make的时候,首先
2013-08-29 13:41:48
1471
转载 如何在OpenWRT环境下做开发
1、搭建开发环境首先,我们需要一个为路由器定制的开发环境,具体可以参考我的另一篇日志:《搭建自己的OpenWrt开发环境》。这里只做一个简单的补充,在执行make menuconfig后,会出现下图:其中,图中红框部分是我定制路由器的系统版本,大家可以根据不同的路由器进行不同的选择;绿框部分表示我们需要编译一个SDK开发环境(默认情况下,此项未勾选)。编译过程中需要通过官网
2013-08-29 13:22:32
1934
转载 "undefined reference to" 问题解决方法
最近在Linux下编程发现一个诡异的现象,就是在链接一个静态库的时候总是报错,类似下面这样的错误:(.text+0x13): undefined reference to `func' 关于undefined reference这样的问题,大家其实经常会遇到,在此,我以详细地示例给出常见错误的各种原因以及解决方法,希望对初学者有所帮助。1. 链接时缺失了相关目标文件(.o)
2013-08-27 17:18:15
638
转载 openWrt软件开发教程1(交叉编译和ipk包生成)
一、交叉编译1. 建立交叉编译环境在使用buildroot对openwrt进行编译之后,在buildroot目录下会有一个名叫staging_dir的目录,针对当前平台的toolchain都在这个目录下。1.1增加toolchain的目录到PATH目录中Vim ~/.bash_profile添加代码:# add openWrt cross-compile path
2013-08-27 17:15:01
6900
Xcode 开发人员入门导引
2011-07-14
Writing Secure Code, Second Edition.chm
2011-07-14
CocoaProgrammingForMacOsX3rd(HD).pdf
2011-07-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人