c
langxianwu
本人性格开朗,爱好体育运动和编程.目前从事公安行业软件开发.
展开
-
main函数的标准原型说明
这是我见过比较好的解释来自http://learn.akae.cn/media/ch23s02.html我们知道main函数的标准原型应该是int main(int argc, char *argv[]);。argc是命令行参数的个数。而argv是一个指向指针的指针,为什么不是指针数组呢?因为前面讲过,函数原型中的[]表示指针而不表示数组,等价于char **argv。那为什么要写成ch...原创 2013-03-12 17:51:03 · 380 阅读 · 0 评论 -
双链表插入自动排序
今天开了一上午无聊的会议,利用一些时间想了一下,双列表插入自动排序问题。这双链表还是花了我很多时间,早上测试结果,总是不对是因为我的list_node输出造成的,让我误以为打印结果不对。 1 /* doublylinkedlist.c */ ...2013-04-19 19:18:30 · 213 阅读 · 0 评论 -
利用环形链表实现 Josephus杀人游戏
利用环形链表实现 Josephus杀人游戏 1 #include <stdlib.h> 2 #include <stdio.h> 3 #include "circular.h" 4 5 void make_n(int n); 6 void kill_one(int, int); 7 void main(int argc, cha...2013-04-18 17:37:06 · 198 阅读 · 0 评论 -
环形双链表与蛋疼的链表反转
错误蛋疼的反转 temp引用的地址已经被改变了所以不能实现反转105 void reverse(void)106 {107 link node = head->next;108 link temp;109 temp = head;110 head->next = head->pre;111 h...2013-04-18 17:34:25 · 137 阅读 · 0 评论 -
单链表反转 指针坑
单链表反转 指针坑 当我看到单链表反转这题目时,感觉这么简单啊。事实很多坑,一不小心就跳进去了。到现在我都记不清跳了多少坑。写代码时不是死循环就是就是丢数据。 这 其实本质上是 指针的坑。一不留神就over了。 因为前面已经实现过各种列表的插入。1、我首先想到的是从A链表中取出数据再生成一个新的链表B,从表头脑插入这样成了链表的反转了。就顺手写了下面代码[1],运行进入死...2013-04-15 17:48:03 · 148 阅读 · 0 评论 -
链表插入并自动排序操作思考
链表插入并自动排序操作思考修改insert函数实现插入排序的功能,链表中的数据按从小到大排列,每次插入数据都要在链表中找到合适的位置再插入。在第 6 节 “折半查找”中我们看到,如果数组中的元素是有序排列的,可以用折半查找算法更快地找到某个元素,想一想如果链表中的节点是有序排列的,是否适用折半查找算法?为什么? 1、插入并排序 64 link insert(link lnode...2013-04-12 17:03:14 · 205 阅读 · 0 评论 -
链表的不同的插入操作的思考
1、此函数中的head被定义为static,所以不需要用return来返回来自http://learn.akae.cn/media/ch26s01.htmlinsert函数虽然简单,其中也隐含了一种特殊情况(Special Case)的处理,当head为NULL时,执行insert操作插入第一个节点之后,head指向第一个节点,而第一个节点的next指针域成为NULL,这很合理,因为它也...2013-04-11 15:38:17 · 118 阅读 · 0 评论 -
关于单连表插入后自动从小到达排序问题
原题:来自http://learn.akae.cn/media/ch26s01.html1、修改insert函数实现插入排序的功能,链表中的数据按从小到大排列,每次插入数据都要在链表中找到合适的位置再插入。在第 6 节 “折半查找”中我们看到,如果数组中的元素是有序排列的,可以用折半查找算法更快地找到某个元素,想一想如果链表中的节点是有序排列的,是否适用折半查找算法?为什么? ...2013-04-09 21:00:04 · 169 阅读 · 0 评论 -
关于单链表的思考
当我看了这个例子后http://learn.akae.cn/media/ch26s01.html感觉很简单没什么特别的(这感觉往往遗漏很多细节)。例子中用了static 定义了关键字 static link head = NULL;看到后我就想用非static来重写单链表。习惯了Erlang的函数编程,在定义C语言中的函数时刻意不用指针去实现,为了进一步理解代码还刻意不用typ...2013-04-09 10:26:21 · 154 阅读 · 0 评论 -
双向链表操作日志文件
2、在第 2.11 节 “本节综合练习”的习题1中规定了一种日志文件的格式,每行是一条记录,由行号、日期、时间三个字段组成,由于记录是按时间先后顺序写入的,可以看作所有记录是按日期排序的,对于日期相同的记录再按时间排序。现在要求从这样的一个日志文件中读出所有记录组成一个链表,在链表中首先按时间排序,对于时间相同的记录再按日期排序,最后写回文件中。比如原文件的内容是:1 2009-7-30 1...2013-04-20 10:25:53 · 146 阅读 · 0 评论