摘要:
栈的应用举例 进制转换 括号匹配检测 行编辑程序 迷宫求解 假设迷宫是这样的,用一个二位数组代表地图得到 示例代码如下 阅读全文
摘要:
栈的链表实现 链栈结构如下图所示:len用来存储栈中元素个数 图示:当链表为空时,即栈为空栈时插入情况 图示:非空时插入 图示:弹出栈顶 示例代码 C include include define OK 1 define ERROR 0 define TRUE 1 define FALSE 0 ty 阅读全文
摘要:
栈的顺序存储结构实现 用数组来实现栈,首先定义栈类型SqStack,里面有两个指针,一个指向栈底,这个栈底初始化后将被指向数组指针,即第一个数组元素。而另一个一个指针指向栈顶,随着新元素不断被push进来,栈顶指针不断往上涨如何判断满栈了呢,那就要用到SqStack里面的第三个元素stacksize 阅读全文
摘要:
挖坑,待填系列 用C语言实现,总是不断纠结于错误处理,动态内存分配,输入输出等和数据结构不相干的内容,有点烦。 结构声明 阅读全文
摘要:
线性表的一般形式 考虑到顺序表有着一些线性链表没有的优点,为此,从实际应用角度出发重新定义线性链表及其基本操作。 可以参考, "链栈的链表实现" 给出了线性链表在栈中的应用。也是单独定义了链表类型,以统计链表中的元素个数 结构和一般辅助声明 阅读全文
摘要:
基本要素声明 双向动态链表逆序创建 图示:当链表为空,插入第一个元素的情况 图示:当链表非空,插入其他元素的情况 获取第i个元素,如果存在,则返回p,否则返回NULL 插入元素 图示:当链表为空时,插入第一个 图示:当链表非空时,插入到末尾 图示:当链表非空时,插入中间位置 删除第i个元素 图示:空 阅读全文
摘要:
单项静态链表的实现 辅助空间本身就是一个链表,只是他链接的都是尚未使用的元素,通过实现的Malloc_SL来返回未使用的元素,这时辅助空间链表把该元素从链表中删除,然后返回该元素。Free_SL后则把该元素重新回收到辅助空间。可以看到,其他链表和辅助空间是共享同一片连续内存空间的,但是它们各不相干扰 阅读全文
摘要:
单项链表的一些必要声明 从表头到表尾逆向创建链表 图示:当链表为空时的插入情况 图示:当链表非空时的插入情况 从链表中获取第 i 个元素的数据 图示:链表为空,p一开始就指向NULL,不满足直接退出 图示:链表非空,while退出条件是j==i,退出时,p刚好指向第i个节点 图示:链表非空,但i的位 阅读全文
摘要:
第一章 1.3 操作系统概念 进程 进程表元素 地址空间(称为内核镜像) 进程表项(包含寄存器值及其其他信息) 进程树 进程远程通信 可通过网络 信号中断 进程标识UID 每一个启动的进程都记录有启动他的用户UID,子进程的UID与父进程的相同。 文件 文件树和进程树的区别 文件树分层一般更多 进程 阅读全文
摘要:
1.1 什么是协议 一个协议 定义了 在两个或多个通信实体之间交换的 报文格式 和 次序 ,以及在报文传输,接收或其他方面所 采取的动作 1.2.2 接入网 DSL 数字用户线 (家庭和ISP之间建立了点对点连接,专用宽带) HFC 混合光纤同轴电缆 (共享宽带) 以太网接入 它使用双绞铜线或同轴电 阅读全文