码迷,mamicode.com
首页 >  
搜索关键字:数据结构 堆栈 汉诺塔    ( 35640个结果
关于队列与栈相互模拟的读书笔记
栈与队列都是比较高级的数据结构,虽然不难,但有时有些问题也比较灵活,在《编程之美》与《剑指offer》上就有一些这样的题目。用队列模拟栈、用站栈模拟队列,以及现实队列与栈的最大值与最小值求解,这些都是基础的,只要理解栈的后进先出与队列的先进先出特点即可解决。 1、栈模拟队列       用两个栈,元素从一个栈stackA进入,从另一个栈stackB出来。进队列时直接添加到stackA,出队列时...
分类:其他好文   时间:2014-05-23 02:28:08    阅读次数:213
快速排序
快速排序如同其名,是排序中性能比较好的一个排序算法,当数组是顺序的话,他的最差的时间复杂度是O(N^2),一般的时间复杂度是O(n*lgn). 快速排序的思想就是分治,每一趟排序过程都把一个数放到最终的位置上面去。然后这个位置把数组分为前半部分和后半部分。针对前半部分和后半部分再递推进行快速排序。 快排的java实现: public class Sort { public stat...
分类:其他好文   时间:2014-05-23 01:44:26    阅读次数:218
【啊哈!算法】算法9:开启树之旅
这是什么?是一个图?不对,确切的说这是一棵树。这哪里像树呢?不要着急我们来变换一下。        是不是很像一棵倒挂的树,也就是说它是根朝上,而叶子朝下的。不像?哈哈,看完下面这幅图你就会觉得像啦。        你可能会问:树和图有什么区别?这个称之为树的东西貌似和无向图差不多嘛。不要着急,继续往下看。树其实就是不包含回路的连通无向图。你可能还是无法...
分类:其他好文   时间:2014-05-23 01:37:38    阅读次数:360
用两个栈实现队列
用两个栈实现队列。...
分类:其他好文   时间:2014-05-23 01:36:57    阅读次数:246
C# struct 结构
结构是使用 struct 关键字定义的,与类相似,都表示可以包含数据成员和函数成员的数据结构。 一般情况下,我们很少使用结构,而且很多人也并不建议使用结构,但作为.NET Framework 一般型別系统中的一个基本架构,还是有必要了解一下的。 结构的特征: 结构是一种值类型,并且不需要堆分配。 结构的实例化可以不使用 new 运算符。 在结构声明中,除非字段被声明为 const 或 stat...
分类:其他好文   时间:2014-05-23 01:05:52    阅读次数:298
Windows内核之内核对象
1内核对象定义: 1.1:每个内 核对象只是内核分配的一个内存块,并且只能由该内核访问。 1.2:该内存块是一种数据结构,它的成员负责维护该对象的各种信息。        有些数据成员(如安全性描述符、使用计数等)在所有对象类型中是相同的,但大多数数据成员属于特定的对象类型。例如,进程对象有一个进程ID 、一个基 本优先级和一个退出代码,而文件对象则拥有一个字节位移、一个共享模式和一个打开模...
分类:Windows程序   时间:2014-05-23 00:23:44    阅读次数:395
【啊哈!算法】算法10:二叉树
二叉树是一种特殊的树。二叉树的特点是每个结点最多有两个儿子,左边的叫做左儿子,右边的叫做右儿子,或者说每个结点最多有两棵子树。更加严格的递归定义是:二叉树要么为空,要么由根结点、左子树和右子树组成,而左子树和右子树分别是一棵二叉树。 下面这棵树就是一棵二叉树。           二叉树的使用范围最广,一棵多叉树也可以转化为二叉树,因此我们将着重讲解二叉树。 二叉树中还有连两...
分类:其他好文   时间:2014-05-23 00:11:28    阅读次数:301
51系列小型操作系统精髓 简单实现7 C语言版待改进
#include "STC12C5A.H" #define TIMER_RELOAD()  {TL0=0x00;TH0=0xC4;}//使能T/C  初始10ms #define MAX_TASKS 2 //任务槽最大个数. unsigned char idata task_stack[MAX_TASKS][2];//任务堆栈.  PC指针为16位,需2个字节task_st...
分类:编程语言   时间:2014-05-23 00:03:19    阅读次数:341
根据前序和中序重建二叉树
注意:1、仅根据前序和后序无法构建唯一的二叉树;2、二叉树前序遍历,第一个数字总是树的根节点的值;3、中序遍历中,根节点的值在序列的中间,左子树的值子在根节点的值得左边,右字树的值在根节点的值得右边;4、思路:递归...
分类:其他好文   时间:2014-05-22 23:56:14    阅读次数:408
微软100题系列之-----设计包含min函数的栈
题意: 定义栈的数据结构,要求添加一个min 函数,能够得到栈的最小元素。 要求函数min、push 以及pop 的时间复杂度都是O(1)。 思路:定义两个栈,一个用来记录数据的插入和删除,一个用来存储最小值的变化 代码如下: template class Stack { public: Stack(int len=100); T Min(); ...
分类:其他好文   时间:2014-05-22 23:46:32    阅读次数:359
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!