摘要: 关于算法,理解的不算很深刻,了解到好的算法不仅在时间的节约和空间的利用上,都最求最优的代码。 比较经典的算法就是各种排序、查找了,下面贴两个理解比较深的优化算法(二分查找在顺序二叉树那里写过了,不再重复,哈希查找的重点在于映射方法和冲突的解决) 1.上台阶问题,100个台阶,可以走1个2个和5个,有 阅读全文
posted @ 2019-07-31 22:10 灰机12321 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 1.定义结构体指针,如果不是作为接收返回值,而是作为参数传递并返回这个指针的话(文件IO中lstat函数),要么使用malloc分配空间,要么直接定义结构体变量,取地址传参 2.write函数,使用O_APPEND参数时候,应该再加上|WRONLY ,否则无法写入,函数正确使用方法为write(co 阅读全文
posted @ 2019-07-31 18:00 灰机12321 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 1。最近从网易云课堂学习了一个老师的数据结构相关的知识,了解到数据结构的应用和二分查找之间的关系,就自己想着写一个创建二叉顺序数和利用栈对二叉顺序树进行顺序输出的代码,终于一个周末的时间写完了。 2.写代码的重点在于实现逻辑,由于递归思想和逻辑的混乱,代码容易出现段错误或者,偶尔输出一半的结果,梳理 阅读全文
posted @ 2019-07-29 11:20 灰机12321 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 二叉树和链表相似,只是后节点变成了左右节点,重要的是递归思想的理解和返回时候的层级结构 1.满二叉树的穿件及前中后序遍历 #include <stdio.h>#include <stdlib.h> typedef struct node{ int date; struct node * lchild 阅读全文
posted @ 2019-07-25 20:26 灰机12321 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 球钟问题: 球钟是一个利用球的移动来记录时间的简单装置。它有三个可以容纳若干个球的指示器:分钟指示器,五分钟指示器,小时指示器。若分钟指示器中有2个球,5分钟指示器中有6个球,小时指示器中有5个球,则时间为5:32。 工作原理:每过一分钟,球钟就会从球队列的队首取出一个球放入分钟指示器,分钟指示器最 阅读全文
posted @ 2019-07-24 21:15 灰机12321 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 补充一下:循环链表初学可能不好理解,除了多画图以外,把循环链表想象成无限的单向(或者双向)链表,每一个元素都是中间元素,就更好理解了。 1.栈和队是线性表的两种特殊管理逻辑,两者都是线性表 2.栈的原则是先入后出FILO(first in last out),类似桶装饼干,最后装入的先被取出用掉,只 阅读全文
posted @ 2019-07-23 19:39 灰机12321 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 1. 使用单项循环链表解决约瑟夫问题: #include <stdio.h>#include <stdlib.h> typedef struct looplist{ int date; struct looplist *next;}looplist; //创建循环链表looplist * loopl 阅读全文
posted @ 2019-07-23 19:23 灰机12321 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 今天继续学习数据结构的线性表部分,从基础的顺序表到链表,类比写了一些调用函数,完成了表的增删改查排序等问题。 尤其是链表的排序,费了很大的心思终于捋顺写出来了,小有成就感,而且代码一次通过率越来越高,几乎不用修改就能测试通过了,make傲娇一小会。 #include <stdio.h>#includ 阅读全文
posted @ 2019-07-22 22:21 灰机12321 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 大学没有选修数据结构,只是在C语言书最后提到过几种数据的 组织形式,也算眼熟,今天学的顺序表感觉还是很容易理解,写了一个有史以来代码最长、调试时间最短的代码,甚是感觉提高了不少,贴上Mark一下,写注释的习惯也慢慢养起来了,要不首先坑的就是自己。 吐槽一下,还是分开写模块比较看着舒服。 #inclu 阅读全文
posted @ 2019-07-19 19:47 灰机12321 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1.终于再一次实现了上大学时候的课堂大作业,C语言算是进入可以应用的阶段了 2.写这段代码使用了模块编程的思想,也尝试的用了结构体指针、共用体指针和枚举类型学的传参,解决了全局变量声明及初始化和传参的问题,虽然成功了,但是感觉代码上还是有些资源浪费, 下一阶段除了总结Linux的基本命令应用,就要开 阅读全文
posted @ 2019-07-18 20:34 灰机12321 阅读(150) 评论(0) 推荐(0) 编辑