摘要:
循环链表是一种链式存储结构,它的最后一个结点指向头结点,形成一个环。因此,从循环链表中的任何一个结点出发都能找到任何其他结点。循环链表的操作和单链表的操作基本一致,差别仅仅在于算法中的循环条件有所不同。 阅读全文
摘要:
一:概念字符串是几乎在所有编程语言中可以实现的非常重要和有用的数据类型,尽管形式字符串可以有任意(但有限)的长度,实际语言的字符串的长度经常被限制到一个人工极大值。一般的说,有两种类型的字符串数据类型:“定长字符串”,它有固定的极大长度并且不管是否达到了这个极大值都使用同样数量的内存;和“变长字符串”,它的长度不是专断固定的并且依赖于实际的大小使用可变数量的内存。现在编程语言中的多数字符串是变长字符串,变成字符串对内存分配策略要求很高。二:表示法一种常用的表示法是使用一个字符代码的数组,下图仅仅为了更好理解字符串,实际字符串在内存不是这样结构(一般用ASCII表示,它的长度可以使用一个结束符( 阅读全文
摘要:
一:线性表的简单回顾上一篇写了顺序存储,通过实验,可以比较清楚的看到,在头部插入需要移动n次,网上很多往往以此来判断顺序存储效率低(当然我们可以通过代码控制每次添加元素都加入链表的尾部),其实一种数据结构两种实现方法,效率高低主要取决内存模型。二:链表名词解释1、链表的“每个节点”都包含一个”数据域“和”指针域“;2、”数据域“中包含当前的数据;3、”指针域“中包含下一个节点的指针;4、”头指针”也就是head,指向头结点数据;5、“末节点“作为单向链表,因为是最后一个节点,通常设置指针域为null;如下示例图代码段如下 1 /* 2 * LNode.h 3 * 4 * Created... 阅读全文
摘要:
工作中开发的都是基于B/S(浏览器/服务器)架构项目,很多大牛都在考虑如何设计出高并发的服务器,比如Nginx、Apache,最近在学习这方面底层知识,写一个简单demo。 阅读全文
摘要:
参加工作快三年,兴趣和生存压力促使自己在业余时间学习一些底层知识,慢慢发现这些看似用不上的东东,很好锻炼我逻辑思维,也大大提升我工作效率。在这里和大家分享我用C++写一个简易版STL,仅供参考和学习使用,想更好更全面学习数据结构资料请参考官方STL源码。 阅读全文