数据结构
李春春_
精通Java软件开发、SQL数据库、Linux底层操作系统原理,有扎实的计算机软件基础,掌握数据挖掘常用算法,能够进行网站后台开发和维护、web系统设计与实现、推荐算法建模与大数据分析。爱好逻辑推理、运动和旅游;性格开朗,有较强的组织与协调能力;有很好的团队合作精神和责任心;兴趣广泛,善于接受新事物,能快速适应新的环境。
展开
-
数据结构实战——Joseph 环的实现
约瑟夫环问题(Joseph)又称丢手绢问题:已知 m 个人围坐成一圈,由某人起头,下一个人开始从 1 递增报数,报到数字 n 的那个人出列,他的下一个人又从 1 开始报数,数到 n 的那个人又出列;依此规律重复下去,直到 m 个人全部出列约瑟夫环结束。如果从 0 ~ (m-1) 给这 m 个人编号,请输出这 m 个人的出列顺序。原创 2014-10-29 21:57:25 · 10314 阅读 · 1 评论 -
数据结构实战——线性表的单链表实现
前面我们说了线性结构的顺序存储表示(数组表示法),接下来看一下线性结构的链式存储表示(指针表示法)。我们可以发现,顺序表的插入、删除操作平均都要移动约一半的元素。当顺序表的长度非常大时,这个时间的消耗还是不容忽视的,这也是顺序存储的最大缺陷。因此顺序表常常用于那些无需频繁插入和删除元素的应用。而链式存储不再依靠内存的连续性来反映元素之间的逻辑关系,而是通过指针链接体现元素之间的逻辑关系。链表没有了顺序表所要求的存储必须连续的弱点,但也失去了顺序表随机存取任一个元素的优点。原创 2014-10-31 23:11:09 · 1502 阅读 · 0 评论 -
数据结构实战——线性结构之动态数组表示法
线性表的顺序存储结构,除了上一篇博客所讲的静态数组表示法以外,还有一种动态数组表示法。就是在执行诸如初始化线性表、销毁线性表、插入元素等动作的时候,会动态的分配内存空间,来合理的申请和释放内存资源。具体地说,C/C++ 语言中有 malloc/free、new/delete 函数来支持这种操作。原创 2014-10-24 16:41:44 · 969 阅读 · 0 评论 -
数据结构实战——线性结构之静态数组表示法
这学期在上《数据结构及应用算法》这门课,收获很多。所以打算在这里以博客的形式记录下自己的学习过程,和大家分享,共同进步。线性表是n(n≥0)个数据元素的有限序列,这些数据元素同属于一个集合,在这个序列中相邻的数据元素之间存在一种相对的位置关系,通常记作:L=(a1,a2,...an)。在序列中,第i-1元素位于第i元素的前面,称为直接前驱元素,第i+1元素位于第i元素后面,称为直接后继元素。i正是标识数据元素相对位置的编号,称为位序。元素的个数称为长度。 线性表的存储结构一般考虑两种方式:顺序存储和原创 2014-10-21 19:41:07 · 1502 阅读 · 1 评论