自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Neil的博客

我庆幸,我正在做我最喜欢的事

  • 博客(9)
  • 收藏
  • 关注

原创 无限式查找-----2013年2月28日

问题描述:已知一个数组x[],元素个数有多少并不很清楚,但是数组元素已经依顺序从小到大排好,而且在数组最后添加了足够多的MAX记号;MAX表示最大的值,比数组中每一个元素都大,而且个数足够多。编写一个程序,在这个数组中找出某个给定的值。      思路:二分查找法是一个非常高效的算法,但要想使用二分查找法,必须满足2个条件:1.元素是有序的,可以从小到大排列,也可以从大到小排列。2.知道元

2013-02-28 11:01:29 960

原创 寻找固定的和----2013年2月26日

问题描述:有两个数组x[]与y[],各有m与n个元素,而且各个元素没有依顺序排列;d是一个已知的值。请写一个程序,看看在x[]与y[]中有没有满足x[i]+y[j]=d的元素。例如,若x[]为3,7,2,4,y[]为1,5,2,3,d为9;那么x[1]+y[2]与x[3]+y[1]都合乎条件,也即都是9。     思路:x[i]+y[j]=d。那么x[i]=d-y[j]了。将x[]数组按从

2013-02-26 10:25:51 938

原创 寻找脚码----2013年2月24日

题目来自:《C语言精选名题百则技巧篇》     问题描述:已知一个整数数组x[],其中的元素彼此都不相同,而且也已经从小到大排列好。请用比较大小,相等的方式编写一个程序,找出给定的数组中是否有一个元素满足x[i]==i(注意:在代码中是从0开始索引的,也就是x[0]是第一个数,所以对应于代码也就是x[i]==i+1)的关系。举例而言,如果x[]={-2,-1,3,7,8},x[3]=3,因

2013-02-24 13:22:07 1328

原创 找出没有相邻的1的二进制数的个数---2013年2月17日

问题描述:用G(n)表示在有n位的二进制数中没有相邻的两个1的二进制数个数。比如,当n=3时,000,001,010,011,100,101,110,111这8个数中只有000,001,010,100,101这5个是没有相邻为1的,故G(3)=5。请写一个程序,输出G(n)的值。      错误的思路(考虑的不周全):采用"分治"的方法,比如n=3,每次都将处理原问题规模的二分之一,直到n

2013-02-17 12:45:17 1717

原创 busybox源码剖析(3)---cat.c

cat显示一个文件的内容。需要注意的是,cat并不能处理目录。 1 extern int cat_main(int argc, char **argv) 2 { 3 int status = EXIT_SUCCESS; 4 5 if (argc == 1) { 6 print_file(stdin); 7 return st

2013-02-15 12:20:41 1575

原创 busybox源码剖析(2)---pwd.c

pwd命令是列出当前的路径。 1 extern int pwd_main(int argc, char **argv) 2 { 3 static char *buf; 4 5 buf = xgetcwd(buf); 6 7 if (buf != NULL) { 8 puts(buf); 9 r

2013-02-15 11:03:08 1294

原创 整数的所有不同分割数目--非递归算法

递归算法见:整数的所有不同分割数目--递归算法     思路:非递归与递归的思维顺序是互逆的,所以很容易写出以下代码。 1 #include 2 #define MAX 1000 3 4 int p[MAX][MAX]={0}; 5 6 int main() 7 { 8 int n=2; 9 int index_n,

2013-02-15 10:45:33 1270

原创 整数的所有不同分割数目----2013年2月15日

问题描述:把一个正整数写成若干个正整数的和。比如4=3+1,2+2,2+1+1,1+1+1+1,再加上自己,就一共有5种分割方式。     思路:求解4的所有分割方式,实际上就是求分割中以4为最大值而且和为4的所有分割方式,可以用p[4][4]来表示。抽象出来,就是p[n][m],表示分割中以m为最大值而且和为n的所有分割方式。那么,就有以下几种情况。     1.第一步当然是n=

2013-02-15 09:51:21 1185

原创 busybox源码剖析(1)---whoami.c

想找个简单的代码来看,学习代码的架构设计,就找到了busybox。先从最早的版本开始看。     whoami命令是获取当前终端的用户名。/etc/passwd文件存储了所有用户名的清单。要注意的是/etc存储的配置文件大多是系统级的配置文件。而whoami想要达到目的,就需要与/etc/passwd文件打交道。     首先来看whoami.c的主体程序: 1 ext

2013-02-14 21:42:59 1333

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除