码迷,mamicode.com
首页 >  
搜索关键字:数据结构    ( 30813个结果
第三章:表、栈和队列
关于循环队列:循环队列是顺序存储结构的,所以由数组实现。采用循环的方式实现队列是有好处的的,原因是队列如果采用数组实现时,如果不采用循环(或者说回绕)的方式,第一种情况是在出队时需要移动队列中后续元素,效率低;第二种情况是如果入队出队频繁,存储空间浪费太大。高一凡的《数据结构算法实现与解析》对这三种...
分类:其他好文   时间:2015-04-27 18:20:43    阅读次数:159
排序算法——插入排序
参考书籍《数据结构与算法分析——C语言描述》 插入排序,简而言之,就是对于第i个数,前i-1个数是已排序的,第i个数则要从第i-1个数开始往前遍历,比较大小,比它大的往后移一位,比它小的则其后为要的插入的位置,则在此处插入即可。插入后会发现前i个数都变成已排序的了(此处应注意体会)。于是依此类推插入第i+1个数。此方法最坏的时间复杂度也会达到O(n^2)的。 例如初始序列: 34 8 6...
分类:编程语言   时间:2015-04-27 17:01:38    阅读次数:176
poj 3074 Sudoku dlx解数独
分析: dlx是从数据结构角度优化01矩阵精确覆盖和重复覆盖的数据结构,它用十字链表只存贮矩阵中的非0元,而01矩阵精确覆盖dfs过程中矩阵会越来越稀疏而且每次恢复现场会浪费大量时间,dlx恰好能解决这两个问题。本题关键是将数独问题转化为01矩阵精确覆盖。数独转化为精确覆盖问题的方法还是参照Knuth的论文,如果读取到一个格子是空的,那么加9行,分别表示这个格子填1到9这9个数字,如果读取到的格...
分类:其他好文   时间:2015-04-27 16:57:30    阅读次数:264
Java 基础:hashCode方法
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket 一、前言     泥瓦匠最近被项目搞的天昏地暗。发现有些要给自己一些目标,关于技术的目标: 专注很重要。专注Java 基础 + H5(学习)     其他操作系统,算法,数据结构当成课外书博览。有时候,就是那样你越是专注方面越多对自己打击越大学啥啥都...
分类:编程语言   时间:2015-04-27 15:19:21    阅读次数:266
求二叉树中节点的最大距离..........
题目描述:        如果我们把二叉树看成一个图,父子节点之间的连线看成是双向的,我们姑且定义“距离”为两个节点之间的边的个数。写一个程序,求一颗二叉树中相距最远的两个节点之间的距离。 分析与解答: 根据相距最远的两个节点一定是叶子节点这个规律,我们可以进一步讨论。 对于任意一个节点,以该节点为根,假设这个根有K个孩子结点,那么相距最远的两个节点U和V之间的路径与这...
分类:其他好文   时间:2015-04-27 15:18:50    阅读次数:104
Java 基础:hashCode方法
Writer:BYSocket(泥沙砖瓦浆木匠)微博:BYSocket豆瓣:BYSocket一、前言 泥瓦匠最近被项目搞的天昏地暗。发现有些要给自己一些目标,关于技术的目标:专注很重要。专注Java 基础 + H5(学习) 其他操作系统,算法,数据结构当成课外书博览。有时候,就是那样你越是专注方面越...
分类:编程语言   时间:2015-04-27 15:03:43    阅读次数:248
redis学习总结1
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。和普通的Key-Value结构不同,Redis的Key支持灵活的数据结构,除了strings,还有hashes、lists、 sets 和sorted set.....
分类:其他好文   时间:2015-04-27 12:56:33    阅读次数:183
java面试题(1-50)
下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最新版本,去掉了EJB 2.x等无用内容,补充了数据结构和算法相关的题目、经典面试编程题、大型网站技术架构、操作系统、数据库、软件测试、设计模式、UML等内容,同时还对很多知识点进行了深入的剖析,例如h...
分类:编程语言   时间:2015-04-27 11:16:06    阅读次数:281
字典树(Trie)
?? 字典树:又称为Trie,是一种用于快速检索的多叉树结构。Trie把要查找的关键词看作一个字符序列,并根据构成关键词字符的先后顺序构造用于检索的树结构;一棵m度的Trie树或者为空,或者由m棵m度的Trie树构成。 注意:和二叉查找树不同的是,其节点并非存储一个元素。 优点:1、利用公共内存,以达到节约内存的目的       2、根节点只存储其子树,不存储字母       3、每个节...
分类:其他好文   时间:2015-04-27 09:57:28    阅读次数:126
C和C++内存分配
一、预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于 数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与 数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(...
分类:编程语言   时间:2015-04-27 09:56:07    阅读次数:110
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!