1.算法描述 归并排序的基本思想是基于合并操作,即合并两个已经有序的序列是容易的,不论这两个序列是顺序存储还是链式存储,合并操作都可以在Ο(m+n)时间内完成(假设两个有序表的长度分别为m和n)。为此,由分治法的一般设计步骤得到归并排序的过程为: 1. 划分:将待排序的序列划分为大小相等(或大...
分类:
编程语言 时间:
2014-12-23 21:05:19
阅读次数:
228
二分查找又称折半查找,它是一种效率较高的查找方法。 【二分查找要求】:1.必须采用顺序存储结构 2.必须按关键字大小有序排列。/** * 二分查找又称折半查找,它是一种效率较高的查找方法。 【二分查找要求】:1.必须采用顺序存储结构 2.必须按关键字大小有序排列。 * ...
分类:
其他好文 时间:
2014-12-23 10:18:18
阅读次数:
138
DataStructer主要研究数据之间的组织关系(逻辑结构)一:线性表结构(一对一)---从物理区分1:顺序存储结构(典型的数组结构ArrayList):特点:查找很快(随机访问),插入,删除很慢。前驱节点不受影响,后续节点受影响。最好的情况是追加在最后,最坏的情况是插入第一位置,此时..
分类:
编程语言 时间:
2014-12-23 06:48:12
阅读次数:
178
DataStructer主要研究数据之间的组织关系(逻辑结构)一:线性表结构(一对一)---从物理区分1:顺序存储结构(典型的数组结构ArrayList):特点:查找很快(随机访问),插入,删除很慢。前驱节点不受影响,后续节点受影响。最好的情况是追加在最后,最坏的情况是插入第一位置,此时..
分类:
编程语言 时间:
2014-12-23 06:46:09
阅读次数:
161
ios nsarray nsmutablearray 内存布局 不同的对象 顺序存储...
分类:
其他好文 时间:
2014-12-20 12:56:47
阅读次数:
170
线性表两种存储结构-顺序存储顺序存储结构代码:#defineMAXSIZE20typedefintElemType;typedefstruct{ElemTypedata[MAXSIZE];intlength;}SqList;结构封装需要三个属性:存储空间的起始位置,数组data,它的存储位置就是线性表存储空间的存储位置线性表的最大存储容量:数组长度M..
分类:
编程语言 时间:
2014-12-17 13:04:04
阅读次数:
185
BFS是较为直观的解法。缺点是要借用不少数据结构的帮忙,也许可以想办法避免。
在需要树的路径时,往往会重新搞一个数据结构,保存子->父的回溯链,这个容易实现。
但确实浪费了时间和空间,避免方法之一是冗余存储。每个节点中按顺序存储所有祖先节点信息。
如此, 当该节点被选中时,它的祖先自然也就确定了。本题的数字可以用一分隔符,例如“#”分割,以完成最后的答案的构造。
/**
* Defini...
分类:
其他好文 时间:
2014-12-09 21:35:32
阅读次数:
177
1、按照数据元素之间存在的逻辑关系可分4中种逻辑关系:
“一对一”:线性结构
“一对多”:树形结构
“多对多”:图状或网状结构
“同属一个集合,无其它关系”:纯集合结构
2、按在计算机中存储分类:
顺序存储:逻辑相邻且物理位置也相邻
链状存储:逻辑相邻,物理位置无要求
索引存储:存储数据元素的同时,建立索引表,索引表中一般包括关键字和地址等信息(关键字唯一标识一个数据元素)...
分类:
编程语言 时间:
2014-12-08 23:03:25
阅读次数:
270
本人文笔较差,语文从来不及格,基础不好,写此类文章仅供自己学习,理解队列及其他知识,高手大神请略过。参考书籍 《数据结构与算法分析-Java语言描述》1.1 线性表简介线性表是0个或多个元素的有限序列。即元素之间有顺序且有限。假设表中有元素A1,A2,A3,....,AN,若存在1 { //不...
分类:
其他好文 时间:
2014-12-06 16:39:14
阅读次数:
218